使用代理报错
本帖最后由 我不是第一个 于 2023-5-23 18:07 编辑1、条件: selenium + 科学上网
正常访问url
2、条件: requests + 科学上网 或 requests + 代理IP
访问url 报错
代码使用的代理ip {'http': 'http://119.186.111.222:22021', 'https': 'http://119.186.111.222:22021'}
raise ProxyError(e, request=request)
requests.exceptions.ProxyError: HTTPSConnectionPool(host='www.bing.com', port=443): Max retries exceeded with url: /search?q=%E4%BB%8A%E5%A4%A9%E5%90%83%E4%BB%80%E4%B9%88 (Caused by ProxyError('Cannot connect to proxy.', FileNotFoundError(2, 'No such file or directory')))
3、 单用requests 不使用科学上网或 代理IP
正常访问
疑问:
代理商说代理IP是没有问题的,但是没有说错误问题在哪,让我自己找。
我的代码:
import urllib3
import requests, random
proxy_ip_path = {'proxy': True, 'num': 15, 'ping': 300,
'proxy_urls': ['代理API 这里就不贴了']}
proxiess_0 = pyip.get_proxy_bandwidth(proxy_ip_path) # 自己写的方法 没有问题
# print(proxiess_0)
proxies = random.sample(proxiess_0, 1)
print(proxies) # 打印结果{'http': 'http://119.186.111.222:22021', 'https': 'http://119.186.111.222:22021'}
sjurl = 'https://www.bing.com/search?q=%E4%BB%8A%E5%A4%A9%E5%90%83%E4%BB%80%E4%B9%88'
ua = fake.chrome(is_pc=True)
headers = {'User-Agent': ua}
# from requests.adapters import HTTPAdapter
# sess = requests.Session()
# sess.mount('http://', HTTPAdapter(max_retries=3))
# sess.mount('https://', HTTPAdapter(max_retries=3))
# sess.keep_alive = False# 关闭多余连接
res = requests.get(sjurl, headers=headers, proxies=proxies, timeout=30, verify=False)
print(res.text) 本帖最后由 我不是第一个 于 2023-5-23 18:15 编辑
自己写的方法和 ua的库没有贴进来都是没有问题的 。
现在不确定到底除了什么问题,不知道是代理IP问题还是什么别的问题。{:5_92:} 你的代理之前有没有问题我不知道,现在肯定是有问题的 isdkz 发表于 2023-5-24 02:31
你的代理之前有没有问题我不知道,现在肯定是有问题的
你是指代码还是指IP,IP的话我打印出来,就是让你们看下格式是否正确,IP肯定是失效了的。
{:5_109:} 我不是第一个 发表于 2023-5-24 07:26
你是指代码还是指IP,IP的话我打印出来,就是让你们看下格式是否正确,IP肯定是失效了的。
格式没有问题 isdkz 发表于 2023-5-24 09:14
格式没有问题
就算是代理IP有问题,但是科学上网是没问题的,用seleniu可以打开,但是用requests就是不行。不知道是少了啥库,还是电脑系统设置问题。
页:
[1]