Python 如何使scrapy跟随无效链接?

Python 如何使scrapy跟随无效链接?,python,python-3.x,scrapy,Python,Python 3.x,Scrapy,我经常使用scrapy来检查长长的链接列表,看它们是否可用 我的问题是当链接格式不正确时(例如,没有以http://或https://开头),爬虫程序崩溃 ValueError: Missing scheme in request url: http.www.gobiernoenlinea.gob.ve/noticias/viewNewsUser01.jsp?applet=1&id_noticia=41492 我阅读了熊猫系列的链接列表,并检查了每一个链接。当响应可访问时,我将其记录为

我经常使用scrapy来检查长长的链接列表,看它们是否可用

我的问题是当链接格式不正确时(例如,没有以http://或https://开头),爬虫程序崩溃

ValueError: Missing scheme in request url: http.www.gobiernoenlinea.gob.ve/noticias/viewNewsUser01.jsp?applet=1&id_noticia=41492
我阅读了熊猫系列的链接列表,并检查了每一个链接。当响应可访问时,我将其记录为“ok”,否则记录为“dead”


我仍然对发现那些格式不正确的URL感兴趣。我如何验证它们并为它们生成“死”呢?

您只需检查它是否以
https
http
开头

如果没有,则手动预编
http

if not LINK.startswith('http:') and not LINK.startswith('https:'):
    LINK = "http://" + LINK

try/except ValueError
中包装
是否会产生
请求
,然后在except
中产生链接checkerItem(index=index['index'],url=url[1],code='invalid')
或类似的工作?还有。。。如果您只感兴趣地检查服务器将以某种方式响应该URL,您可能需要考虑是否执行<代码>方法=“头”<代码>。将保存获取页面内容的操作,如果您不需要,可以使用bandwith并加快速度。try/except
ValueError
将是最好的方法(使用except中的
self.logger.warning()
method=HEAD
没有帮助,因为在到达
yield
之前,在
Request()中发生异常。
if not LINK.startswith('http:') and not LINK.startswith('https:'):
    LINK = "http://" + LINK