爬虫执行过程中,难免会受网络出故障,电脑死机等一些不可控因素 的干扰,而一旦出现这种情况,代码就会报错或者中断,需要重新执行。这样一来,为了避免代码的重复执行,保障运行效率,就必须要给代码设置中断后重新开始的功能。
中断继续开始的思路如下:
前提:
1.定义好爬虫函数(这个因具体网页而异)
2.定义存储抓完的url的函数
def saveFinished(url=None, path=None):
"""
:param pageurl: 已完成页面url
:param path: 写入文件
:return:
"""
if url is not None:
with open(path, r"a", newline="", encoding="utf8") as fileError:
fileError.writelines(url+'\n')
3.定义restart_program函数。含义是爬虫执行中出现故障,需要手动重新开始