爬虫的ip被封禁,使用http高匿代理仍无法访问,但https的代理就可以访问?

用python写了个爬虫爬取糗事百科:http://www.qiushibaike.com/hi...的历史帖子,爬的挺慢,几秒一个页面,一个多小时后还是被封了ip,于是打算用代理接着爬。
代理地址从这里获取的:https://github.com/qiyeboy/IP...,我一开始用的是http协议的高匿代理,但糗百似乎知道我的原ip,还是不让我访问(ip是可用的,已经验证),我换了https协议的代理之后就可以继续爬了。
使用的是urllib2.install_opener(opener)。
为什么会这样,是代理的问题吗?还是糗百的反爬虫已经足够牛逼了?我知道https比http更安全,但为什么http代理连隐藏原ip都不行?有没有什么办法能够隐蔽地用http代理进行爬虫吗?
本人菜鸡,对原理不是很清楚,希望大神能够指点。

阅读 13.8k
4 个回答

因为你可以从这里获取免费的IP别人也可以,网络上这么多人在用,你拿到的代理IP早就已经在糗百的黑名单了

问题已解决,我好菜啊。。。
居然没有注意到http://www.qiushibaike.com会自己跳转到https://www.qiushibaike.com
这样想访问糗百就要用https协议,而我一开始只挂了http的协议,就默认用本机ip了。
由此产生的一个灵异现象就是爬取百度搜索本机ip的页面(百度用的是https)和某个点进去的本机ip页面(http)结果不一样。。。
大概就是这样,大家爬虫的时候还是要注意网站用的什么协议呀。

新手上路,请多包涵

你好,我也遇到和你一样的问题。但是我用urllib2发现用不了https的代理。你是用什么工具

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题