ip代理问题

来源:8-8 scrapy实现ip代理池 - 3

游园惊梦_张

2017-05-27

老板,西刺代理上面的https代理ip用requests请求HTTPS页面不成功,是这样的代理无法请求https页面还是有什么诀窍,个人觉得现在大部分有价值的网站都用HTTPS了,我们的ip代理池为什么不能用HTTPS代理IP

写回答

2回答

游园惊梦_张

提问者

2017-05-27

import requests
url = 'https://www.jd.com/'
url2='http://jingyan.baidu.com/article/36d6ed1f5475f81bcf488333.html'
proxy_ip = 'https://36.99.206.229:808'
proxy_dict = {'https': proxy_ip}
response1 = requests.get(url=url,proxies=proxy_dict,headers={'User-Agent':'Mozilla/5.0 (Windows WNT 6.1; OW64; rv:51.0) Gecko/20100101 Firefox/51.0'})
response2 = requests.get(url=url2,proxies=proxy_dict,headers={'User-Agent':'Mozilla/5.0 (Windows WNT 6.1; OW64; rv:51.0) Gecko/20100101 Firefox/51.0'})
print(response1.status_code,response2.status_code)

我用西刺代理上面爬取的https代理去请求http页面时候是正常返回的,去请求https页面却提示无法连接(requests.exceptions.ProxyError: HTTPSConnectionPool(host='www.jd.com', port=443): Max retries exceeded with url: / (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x02C39E70>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。',))))

不知道是我设置代理错误,还是由于https请求不可以使用代理或者是这个代理的确是不能用,因为现在百度、淘宝、京东都是https请求,对于爬取他们的代理ip设置,我实在是不懂,望您能帮我详细说一说

0
1
bobby
亲, 我这里用你的代码运行完全没有问题啊, 是不是和你本地ip代理一致, https和http代理的区别你可以研究一下这篇文章 https://imququ.com/post/web-proxy.html
2017-05-30
共1条回复

bobby

2017-05-27

https代理第一是少 第二是速度相对http会慢一点, 如果自己想用的话 直接爬取下来设置就行了 和http代理设置一样


我这里能获取https代理 :


headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36'}#构造头部
url="http://www.xicidaili.com/wn/"
html=requests.get(url,headers=headers).content#get中提交url,headers
print html

0
0

Scrapy打造搜索引擎 畅销4年的Python分布式爬虫课

带你彻底掌握Scrapy,用Django+Elasticsearch搭建搜索引擎

5762 学习 · 6265 问题

查看课程