开发者社区> 问答> 正文

在Windows上使用Python的HTTP请求有时会提供WinError 100601

我想从网上下载一个png文件。这是Python3程序:

import requests

url_1 = 'https://ichef.bbci.co.uk/news/660/cpsprodpb/9FB3/production/_105038804_titled-624-nc.png'

url_2 = 'https://randomuser.me/img/creator_keith.png'
res = requests.get(url_1)
print (res.status_code)
Lets try for url_2
res = requests.get(url_2)
print (res.status_code)
这适用于url_1,但对于错误的url_2失败:

requests.exceptions.ConnectionError:HTTPSConnectionPool(host ='randomuser.me',port = 443):使用url:/img/creator_keith.png超出了最大重试次数(由NewConnectionError引起(':无法建立新连接:[WinError 10061] ]无法建立连接,因为目标机器主动拒绝它',))

我知道这可能是防火墙或代理问题。但我的问题是为什么它适用于某些网站而不适用于其他网站?BTW这适用于Linux上的url_1和url_2。

展开
收起
一码平川MACHEL 2019-01-16 17:25:22 2322 0
1 条回答
写回答
取消 提交回答
  • 您尝试调用URL的频率是多少?你有时能得到结果吗?

    我假设服务器已启动并正在运行。每当执行requests.get时,都会创建一个tcp连接,当您重复调用requests.get时,它将创建多个tcp连接,这会降低性能并可能导致HTTPSConnectionPool错误。您可以尝试Python请求的会话,它将保留为重用而创建的tcp连接。

    2019-07-17 23:25:41
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载