这是我第一次创建蜘蛛,尽管我很努力,但它仍然没有返回任何内容到我的 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 列表,这没关系。如果我在 scrapy shell 中的一个 URL 中搜索名称,它会找到它。问题是当我抓取所有链接中的所有名称时。我使用“scrapy crawl emag>emag.csv”运行它
你能给我一个提示有什么问题吗?