Python请求错误10060

2024-04-20 11:54:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个脚本爬行一个网站。 直到今天一切都很完美, 但是现在它没有这样做。

它会给sme以下错误:

 Connection Aborted Error(10060 ' A connection attempt failed becvause the connected party did not properly respond after a period of time, or established a connection failed because connected host has failed to respond'

我一直在寻找答案和设置,但我不知道如何解决这个。。。

在IE中,我不使用任何代理(连接->;Lan设置->;代理=禁用)

它在这段代码中被破坏了,有的是第一次运行,有的是第二次运行。。等等

def geturls(functionurl, runtime):
startCrawl = requests.get(functionurl, headers=headers)
mainHtml = BeautifulSoup(startCrawl.content, 'html.parser')
mainItems = mainHtml.find("div",{"id": "js_multiselect_results"})
for tag in mainItems.findAll('a', href=True):
    tag['href'] = urlparse.urljoin(url,tag['href'])
    if shorturl in tag['href'] and tag['href'] not in visited:
        if any(x in tag['href'] for x in keepout):
            falseurls.append(tag['href'])
        elif tag['href'] in urls:
            doubleurls.append(tag['href'])
        else:
            urlfile.write(tag['href'] + "\n")
            urls.append(tag['href'])

totalItemsStart = str(mainHtml.find("span",{"id": "sab_header_results_size"}))
if runtime == 1:
    totalnumberofitems[0] = totalItemsStart
    totalnumberofitems[0] = strip_tags(totalnumberofitems[0])
return totalnumberofitems

我该怎么解决?


Tags: ingt代理iftagnotconnectionhref
1条回答
网友
1楼 · 发布于 2024-04-20 11:54:01

尝试增加requests.get方法的timeout参数:

requests.get(functionurl, headers=headers, timeout=5)

但很有可能服务器正在阻止您的脚本,以防止取消尝试。如果是这种情况,您可以尝试通过设置适当的标题来伪造web浏览器。

{"User-Agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 GTB7.1 (.NET CLR 3.5.30729)", "Referer": "http://example.com"}

相关问题 更多 >