无法关注链接,scrapy回调无法正常工作

时间:2016-06-15 15:34:56

标签: python web-scraping scrapy scrapy-spider

我在scrapy中度过了一段轻松的时光,直到我开始尝试在我的蜘蛛中加入第二种解析方法来处理链接。我尝试运行时遇到以下错误:

“parse_dir_contents()缺少1个必需的位置参数:'response'”

不确定为什么会这样。我遵循了官方scrapy文档中提供的基本模型。

这是我的代码:

import scrapy
from bloombergspider.items import ArticleItem


class BloombergSpider(scrapy.Spider):
    name = "bloomberg"
    allowed_domains = ["http://www.bloomberg.com/"]
    start_urls = [
        "http://www.bloomberg.com/"
    ]

    def parse(self, response):
        for href in response.xpath('//a[contains(@href, "articles")]/@href'):
            url = response.urljoin(href.extract())
            yield scrapy.Request(url, callback=self.parse_dir_contents, dont_filter="true")

    @staticmethod
    def parse_dir_contents(self, response):
        for sel in response.xpath('//h1'):
            self.logger.info("parse dir contents")
            item = ArticleItem()
            item['title'] = sel.xpath(".//span/text()").extract()
            yield item

0 个答案:

没有答案