我上周已经发布过,我的漫游器始终在321页被阻止。我更改了Scrapy设置,但发现321至末尾的页面似乎不包含任何项目。
我想知道如何跳过产生错误的页面。我尝试过:
next_pages = response.xpath("//div[@class='pgLightPrevNext']/a/@href").extract() #essai pour accéder au contenu des pages suivantes
for next in next_pages:
absolute_url = self.base_url + next
try:
yield scrapy.Request(absolute_url, callback=self.parse_dir_contents)
except:
pass
但是没有结果。如何跳过这些页面?
谢谢。
答案 0 :(得分:0)
如果一页收集的项目数为return
,则可以0
。
答案 1 :(得分:0)
在下一个获取数据的函数中,检查response == 200。 如果响应不等于200,则可以在一定限制下使用重试变量使用另一个函数重试该URL。如果超出限制,请输入下一个产品网址。
try:
if response.status == 404:
self.append(self.bad_log_file, response.url)
self.append(self.fourohfour, response.url)
elif response.status == 200:
self.append(self.ok_log_file, response.url)
else:
self.append(self.bad_log_file, response.url)
except Exception, e:
self.log('[eccezione] : %s' % e)
pass