首页 > 解决方案 > 爬虫被服务器终止后自动重启

问题描述

我正在尝试构建一个类似于arxiv-sanity但使用更高级算法的学术论文推荐系统。第一步是请求 arXiv 服务器并获取所有元数据以进行进一步处理。

但是,我写的爬虫经常被arXiv服务器终止,即使我设置time.sleep(10)了,10(我认为)持有爬虫的时间相对较长。幸运的是,由于我的爬虫依赖于 URL 中的索引,我可以保存idx并稍后重新运行程序。所以这是我的问题:如何在爬虫终止后自动重新运行我的爬虫。

import time
import requests

area = "cat:cs.ML+OR+cat:cs.CV"

for idx in range(0, 10000, 100):
    base_url = "http://export.arxiv.org/api/query?"
    query = "search_query={}&sortBy=lastUpdatedDate&start={}&max_results={}".format(area, idx, 100)

    response = requests.get(base_url + query)
    # do some processing
    time.sleep(10)

标签: pythonweb-crawler

解决方案


推荐阅读