请求不允许从响应中获取状态代码的URL

时间:2013-05-04 08:48:56

标签: python callback scrapy

我正在寻找一个解决方案,在不允许的域上发出请求以检查出站链接。

但我的函数“parse_outboundLinks”永远不会被调用。

我必须修改允许的域名吗?

感谢您的帮助

我的代码:

    name = "mySpider"
    allowed_domains = ["monsite.fr"]
    start_urls = ["http://www.monsite.fr/"]
    rules = [Rule(SgmlLinkExtractor(allow=()),follow='true',callback='parse_item')]

    def parse_item(self, response):
        xlink = SgmlLinkExtractor(deny_domains=(self.allowed_domains[0]))
        for link in xlink.extract_links(response):
            Request(link.url, callback=self.parse_outboundLinks)

   def parse_outboundLinks(self, response):
         print response.status

1 个答案:

答案 0 :(得分:0)

只有在指定yield时才会调用Parse函数 将Request(link.url, callback=self.parse_outboundLinks)更改为yield Request(link.url, callback=self.parse_outboundLinks)

其他主题中的类似问题 scrapy's Request function is not being called