爬虫被服务器终止后自动重启

时间:2021-01-08 15:26:50

标签: python web-crawler

我正在尝试构建一个类似于 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)

0 个答案:

没有答案