Python中关于scrapy的request使用问题
现在我有一个爬虫,parse 到了一个页面的相关数据,但是,这个页面的有些数据需要结合 parse 中的另一个 request 的结果才能确定是否有用,类似下面的代码:
def parse(self, response):
...........
yield scrapy.Request(xxxxx, callbask=func)问题就在于 我怎么拿到这个 request 的返回值!!!!
.......
Python中关于scrapy的request使用问题
你不会连回调的意思都不懂吧,你那个单词都写错了不是 callbask,是 callback,在这个函数里等着就行了
我无法理解你的问题
callback 你用来干啥了???
callback 的 response 参数就是这个请求的响应
你应该在 callback 参数对应的 func 里面处理这个请求对应的后续工作
<br> def parse(self, response):<br> urls = ["<a target="_blank" href="https://www.test.com/page/" rel="nofollow noopener">https://www.test.com/page/</a>{}/".format(i) for i in range(1,250)]<br> for url in urls:<br> yield Request(url,callback=self.parse2)<br><br> def parse2(self,response):<br> article_urls = response.xpath("//div[@class='col-sm-12 col-lg-7 col-md-7']//div//a//@href").extract()<br> for url in article_urls:<br> yield Request(url,callback=self.parse3)<br><br> def parse3(self,response):<br> items = XiazaiItem()<br> items['title']=response.xpath("//article//div//h1[@class='h2']/text()").extract()<br> items['content']=response.xpath("//div[@class='article__body']//p/text()").extract()<br> yield items<br>
这种情况我一般就不用 yield 了
import requests
直接用 requests 走起
再这个 callback,处理了,然后上面那个 parse 怎么拿到 callback 处理的结果?

