1

我正在使用 grequests 爬取这个网站(速度很慢),在最初的几百个请求中,我得到的主要是 200 个 HTTP 响应,但在某个时刻,我得到的只是 None 响应(没有任何引发的异常)。

最奇怪的部分是,如果我在第一次爬网仍在运行并获得 None 响应时再次尝试运行爬网,则第二次爬网收到 200 个响应。

顺便说一句,我很确定我正在抓取的网站没有任何类型的抓取保护。

这是我的代码:

for x in range(0, len(urls), JUMP):                 

    rs = (grequests.get(u, stream=False, headers = headers, 
    timeout = 300) for u in urls[x:x+JUMP])     
    responses += grequests.map(rs,exception_handler=nones_exception_handler)

# saves the failed requests so i can try those again later
def nones_exception_handler(request, exception): 
    nonlocal exceptionurls
    print(exception)
    exceptionurls.append(request.url)
4

0 回答 0