スパイダーを作成するのはこれが初めてで、私の努力にもかかわらず、csv エクスポートに何も返されません。私のコードは次のとおりです。
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import Selector
class Emag(CrawlSpider):
name = "emag"
allowed_domains = ["emag.ro"]
start_urls = [
"http://www.emag.ro/"]
rules = (Rule(SgmlLinkExtractor(allow=(r'www.emag.ro')), callback="parse", follow= True))
def parse(self, response):
sel = Selector(response)
sites = sel.xpath('//a/@href').extract()
for site in sites:
site = str(site)
for clean_site in site:
name = clean_site.xpath('//[@id=""]/span').extract()
return name
問題は、サイトを印刷すると、URL のリストが表示されることです。これで問題ありません。スクレイピーシェルでURLの1つで名前を検索すると、それが見つかります。問題は、すべてのリンクのすべての名前がクロールされたときです。「スクレイピークロールemag> emag.csv」で実行します
何が悪いのかヒントを教えてください。