鱼C论坛

 找回密码
 立即注册
查看: 2164|回复: 16

[已解决]爬虫代理只能访问https网站,不能访问http网站

[复制链接]
发表于 2018-10-10 17:31:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 qwertyuiop1822 于 2018-10-10 18:39 编辑

在验证http://www.data5u.com/free/gwgn/index.shtml中的代理时
发现访问https的网站正常返回200,而且我写入html发现网页也正常,如百度、新浪,访问http的网站则连接超时。
为什么会出现这种情况呢?求各位大佬指教。

又遇到个不正常的事,不管代理怎么写,就算写成字母,比如"wwww",访问https://www.baidu.com返回码也是200
也就是说https并不能判断代理是否可用,他总是会返回正常内容。唯一合理的解释就是代理并没有生效,这是为什么?

我又试了http://www.89ip.cn/这个网站的代理
有的可以访问http://www.baidu.com,有的不能

代码如下:
  1. import requests

  2. headers = {
  3.      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.61 Safari/537.36',
  4. }
  5. proxies = {
  6.   'http':'http://46.45.19.138:8410'
  7. }
  8. #url = 'http://45.32.164.128/ip.php'
  9. url = 'https://www.baidu.com/'

  10. try:
  11.     res = requests.get(url, headers=headers, proxies=proxies, timeout=10)
  12.     print(res.status_code)
  13. except:
  14.     pass
复制代码
最佳答案
2018-10-10 22:06:44
来来我给你好好讲解下
proxies={'http':'http://46.45.19.138:8410'}#这里意思是访问http类型的网站,就用这个代理,你访问的https,其实就是没用代理,所以https就可以访问,那为什么http还是访问不了,那是这个代理有问题,为了http和https都用这个代理那就加上'https':'http://46.45.19.138:8410'

proxies={'http':'http://46.45.19.138:8410','https':'http://46.45.19.138:8410'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-10-10 17:37:32 | 显示全部楼层
代理格式写错了
proxies = {
  'http':'46.45.19.138:8410'
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-10 17:47:55 | 显示全部楼层
塔利班 发表于 2018-10-10 17:37
代理格式写错了
proxies = {
  'http':'46.45.19.138:8410'

这是官方文档:http://docs.python-requests.org/ ... vanced.html#proxies

不过我按你的写,发现和现在一样的情况,加不加http://并没有什么影响
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 17:50:17 | 显示全部楼层
好吧,你多试几个Ip试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-10 17:52:55 | 显示全部楼层
塔利班 发表于 2018-10-10 17:50
好吧,你多试几个Ip试试

我试了一整页的ip都是一样的,https能访问,http不能
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 18:21:08 | 显示全部楼层
我怎么就行了呢
1.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-10 18:25:36 | 显示全部楼层

因为url是https,你换成http的网站试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 18:35:03 | 显示全部楼层
还是http代理
1.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-10 18:42:04 | 显示全部楼层

看了你的结果,我好像知道问题出在哪里了,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-10 18:44:03 | 显示全部楼层

我现在用的是达内的局域网,有一些网络限制。至于限制了什么,我也并不是很清楚。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-10 18:47:35 | 显示全部楼层

你试一下将url = 'https://www.baidu.com'
然后代理随便写比如:
proxies = {
'http':'wwwww'
}
看看返回码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 18:51:55 | 显示全部楼层
我觉得不是你理解的那样,你用了个错误的代理当然,不行
你用高匿的代理,网站识别了才不让你爬,
我最后发的是透明代理,还在网站控制范围内,可以识别出你的真实IP
所以就暂且放过了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-10 19:00:17 | 显示全部楼层
塔利班 发表于 2018-10-10 18:51
我觉得不是你理解的那样,你用了个错误的代理当然,不行
你用高匿的代理,网站识别了才不让你爬,
我最后 ...

访问https的网站时,错误的代理却返回了正常的内容,
如果网站能识别出高匿代理,那代理的意义不是没有了。。。
透明代理在自己的ip被封能不能访问网站?如果不能,不就没什么用了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 19:10:15 | 显示全部楼层
代理的本质是让你可以访问你访问不到的url
有的代理是定向的

透明代理可以识别出你的Ip,如果你的IP出现过多,
如果想反爬。还是可以禁你

高匿代理也不是完全匿的,也不是没什么用,主要是你蒙面做坏事,人家有能力发现不发现的问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 21:02:12 From FishC Mobile | 显示全部楼层
呃,不知道是不是因为你代理开放的协议是http的,代理ip是有自身开放的协议的,用http的代理访问https的会报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-10 22:06:44 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
来来我给你好好讲解下
proxies={'http':'http://46.45.19.138:8410'}#这里意思是访问http类型的网站,就用这个代理,你访问的https,其实就是没用代理,所以https就可以访问,那为什么http还是访问不了,那是这个代理有问题,为了http和https都用这个代理那就加上'https':'http://46.45.19.138:8410'

proxies={'http':'http://46.45.19.138:8410','https':'http://46.45.19.138:8410'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-11 20:26:15 | 显示全部楼层
waitforlove 发表于 2018-10-10 22:06
来来我给你好好讲解下
proxies={'http':'http://46.45.19.138:8410'}#这里意思是访问http类型的网站,就用 ...

额,原来如此
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-2 21:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表