我正在抓捕电子商务网站,并抓取了多个类别,但其中一些产生了结果,但一些链接却出现了错误:Spider错误处理...请帮助我如何对其进行排序...
答案 0 :(得分:0)
根据控制台中的错误数据,错误发生在带有p参数?p=2
的url上-这意味着您的抓取工具不会处理特定seacrch的第二页。
看来您的应用程序没有将元数据传输到下一个请求。
parse_products
方法需要parse
方法中的元数据。
我想您负责搜索结果分页的parse_products
代码如下:
yield Request(next_url,callback=self.parse_products)
如果设置为true,则您的应用程序将无法读取元数据并引发错误,例如从控制台中。
在这种情况下,您需要在parse_products
方法中向下一页请求添加meta参数:
yield Request(next_url, meta = response.meta,callback=self.parse_products)