python 使用代理IP报错 HTTPSConnectionPool(host=‘XXXXX‘, port=443): Max retries exceeded with url

出现报错情况:

在使用 requests.get(url, params=params, headers=headers, proxies=proxies) 的时候报错。

报错内容:exceptions.MaxRetryError: HTTPSConnectionPool(host='XXXXX', port=443): Max retries exceeded with url: XXXXXXX

如果不用代理(requests.get(url, params=params, headers=headers))则可以正常请求。

解决思路:

1.首先:确认代理IP是否可以正常使用(大概率就是代理IP不能用,直接买吧,免费的基本都没法用)

我使用的方法是,通过浏览器设置代理IP。然后访问对应网站,可以访问,那代表代理IP没问题,如果不能访问,则代表代理IP有问题。

浏览器代理IP设置:(其他的可以自行查找,基本都差不多)
打开chrome设置->系统->打开您计算机的代理设置->开启代理->填写IP和端口->保存
在这里插入图片描述
win10
在这里插入图片描述

win2012
在这里插入图片描述
在这里插入图片描述

2. 标题检查下面几个问题(我就是这里踩的坑)

  1. 代理的proxies设置中,每个键值对,无论是key还是value中,的httphttps都必须用小写,因为用大写后代理会无效(亲测),走的还是本机的IP
  2. 代理的proxies设置中,无论是http还是https对应的值,开头都是http

例如:

proxies = {
    'http': 'http://123.12.12.12:8080',
    'https': 'http://123.12.12.12:8080'
}
  1. 目标网站是 https:// 的话,要在请求的时候增加 verify=False
    参数:verify:Ture/False,默认是Ture,用于验证SSL证书开关。

例如:

proxies = {
    'http': 'http://123.12.12.12:8080',
    'https': 'http://123.12.12.12:8080'
}
res = requests.get(url, verify=False, proxies=proxies)

目前我自己用以上方法都解决了,基本上都是代理IP的问题,很多代理IP可以测试,用测试的如果还是不行,再尝试后面的几个方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值