-1
我目前正在構建一隻蜘蛛來提取樂器及其數據。Scrapy CrawlSpider Not Crawling
爲此我使用的是CrawlSpider,最終的結果是將所有這些數據都放入mongoDB文檔中。顯然,我還沒有完成,並沒有得到這一點。
編輯:我能夠修復錯誤,並讓它運行:但現在爬行器抓取'0'頁並沒有數據返回到它輸出的CSV文件。問題是什麼?
這是我有:
# -*- coding: utf-8 -*-
import scrapy
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import Selector
from scrapy.item import Item
class FenderSpider(CrawlSpider):
name = "fender"
allowed_domains = ["example.org/"]
start_urls = (
'http://www.example.org/fender/?ob=model_asc#results',
)
rules = (
Rule(SgmlLinkExtractor(allow=('item\&pn=*',)), callback='parse_item'),
)
def parse_item(self, response):
item = scrapy.Item()
item['data'] = response.xpath('//span[@class="itemResult"]/text()').extract()
return item
這裏是我的項目文件:
# -*- coding: utf-8 -*-
# Define here the models for your scraped items
#
# See documentation in:
# http://doc.scrapy.org/en/latest/topics/items.html
import scrapy
class MdbItem(scrapy.Item):
# define the fields for your item here like:
# name = scrapy.Field()
name = 'MdbItem'
Item = scrapy.Field()
# company = scrapy.Field()
# model = scrapy.Field()
# model_name = scrapy.Field()
#instrument_type = scrapy.Field()
# year = scrapy.Field()
# serial = scrapy.Field()
# sku = scrapy.Field()
一切工作正常,但沒有數據被提取。我不明白爲什麼。
任何人都可以幫忙嗎? 我只是學習Python和Scrapy,所以我非常喜歡新手。
非常感謝,這完全解決了這個問題。但是現在我剩下一個新的 - 抓取工具似乎沒有抓取或提取數據。 (忽略以上回答的編輯,這是偶然的並且意味着評論) – page 2014-11-04 21:43:58
@page這是一個單獨的問題,應該在單獨的問題中解決。你不應該完全編輯這個問題 - 這不是這裏的事情。 – alecxe 2014-11-06 16:36:36
好的,我很抱歉。將創建一個新的問題。 – page 2014-11-06 17:22:22