Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
scrapy python从spider调用spider_Python_Python 2.7_Scrapy - Fatal编程技术网

scrapy python从spider调用spider

scrapy python从spider调用spider,python,python-2.7,scrapy,Python,Python 2.7,Scrapy,我有一个spiner,它可以抓取页面并获取所有URL 我有另一个spiner,它得到一个url并在上面废弃 我想为从第一个spiner获得的每个链接调用第二个spiner 用于从第一个spiner获取所有链接的代码 for site in sites: Link = site.xpath('a/@href').extract() 但是我不知道如何为每个链接调用spiner 请帮帮我,我想你最好把两个蜘蛛联合起来,做些类似的事情: def get_links(self,

我有一个spiner,它可以抓取页面并获取所有URL

我有另一个spiner,它得到一个url并在上面废弃

我想为从第一个spiner获得的每个链接调用第二个spiner

用于从第一个spiner获取所有链接的代码

for site in sites:
            Link = site.xpath('a/@href').extract()
但是我不知道如何为每个
链接调用spiner


请帮帮我,我想你最好把两个蜘蛛联合起来,做些类似的事情:

def get_links(self, response):
    for site in sites:
        link = site.xpath('a/@href').extract()[0]
        yield Request(url=link, callback=self.scrape_them)

def scrape_them(self, response):
    # by now scrapy called the link and you get the response
    ...

这正是我发现的使用方法。但是我得到了这个异常,请检查请求没有定义,有什么我必须导入的吗?
来自scrapy.http导入请求
+1给你,我得到了这个异常:`请求url必须是str或unicode,得到列表:`为什么这样请?非常感谢。你帮忙