我想从网上下载一个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。
您尝试调用URL的频率是多少?你有时能得到结果吗?
我假设服务器已启动并正在运行。每当执行requests.get时,都会创建一个tcp连接,当您重复调用requests.get时,它将创建多个tcp连接,这会降低性能并可能导致HTTPSConnectionPool错误。您可以尝试Python请求的会话,它将保留为重用而创建的tcp连接。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。