请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请求百度验证IP是否可用,一直有exception 截屏

https://img1.sycdn.imooc.com/szimg//59ba0fbf0001c4ee13210536.jpg


https://img1.sycdn.imooc.com/szimg//59ba0fbf0001e35f11380506.jpg


https://img1.sycdn.imooc.com/szimg//59ba0fc0000101ea11110586.jpg

debug 运行了几次都是 invalid ip and port  感觉代码没有问题,好像请求百度是不是失败了?

正在回答 回答被采纳积分+3

5回答

慕雪8012440 2018-02-26 21:43:00

https://img1.sycdn.imooc.com//szimg/5a9411960001e01f06580182.jpg

这样改即可。

1 回复 有任何疑惑可以回复我~
提问者 SingleVergil 2017-09-14 15:03:22


https://img1.sycdn.imooc.com/szimg//59ba2965000168bd14300596.jpg


好多IP都是不可用的   这是正常的吗 ?   我都怀疑是不是  这块代码写的有问题 

http_url = 'http://www.baidu.com/'  # https????????????  http?https?
proxy_url = 'http://{0}:{1}'.format(proxy_ip, proxy_ip_port)   # https://{0}:{1}
try{
   proxy_dict = {
       'http': proxy_url,
   }
   response = requests.get(http_url, proxies=proxy_dict)
   print('请求百度验证IP返回成功')

except .....

0 回复 有任何疑惑可以回复我~
  • bobby #1
    这种免费的ip代理 用的人太多 确实不稳定, 你可以搜索一下收费的代理试试,代码是没有问题的, 只是有些网站需要使用https代理
    回复 有任何疑惑可以回复我~ 2017-09-15 09:49:57
提问者 SingleVergil 2017-09-14 13:51:41

视频中 def judge_ip(self, proxy_ip, proxy_ip_port):
   #判断ip是否可用  访问百度查看IP是否可用
   http_url = 'http://www.baidu.com/'  # http
   proxy_url = 'http://{0}:{1}'.format(proxy_ip, proxy_ip_port)

结果验证了好多都是失败的  是不是我写的代码有问题

最后改成 

def judge_ip(self, proxy_ip, proxy_ip_port):
   http_url = 'https://www.baidu.com/'  # http
   proxy_url = 'https://{0}:{1}'.format(proxy_ip, proxy_ip_port)

然后随机验证了几个都是  返回200  debug没有exception

我现在有点晕了:就是到底是验证某个IP就应该不可用,还是说我的代码有我问题 嗯

0 回复 有任何疑惑可以回复我~
  • bobby #1
    百度已经不支持http访问了 改成https访问就行了
    回复 有任何疑惑可以回复我~ 2017-09-15 09:51:30
提问者 SingleVergil 2017-09-14 13:40:24

为什么 http_url = 'http://www.baidu.com/'
改成  http_url = 'https://www.baidu.com/'

http--->https 就正常了  scrap 是不是http  https 都支持?  这里有点疑问  老师!


0 回复 有任何疑惑可以回复我~
  • 提问者 SingleVergil #1
    看你的视频 http 是正常的  有些疑问!我这里每个入库的IP判断都是 exception 显示 连接拒绝,改成https就正常了  !
    回复 有任何疑惑可以回复我~ 2017-09-14 13:42:55
提问者 SingleVergil 2017-09-14 13:39:55

为什么 http_url = 'http://www.baidu.com/'
改成  http_url = 'https://www.baidu.com/'

http--->https 就正常了  scrap 是不是http  https 都支持?  这里有点疑问  老师!

0 回复 有任何疑惑可以回复我~
  • bobby #1
    scrapy是http和https都支持的 这个你不用担心
    回复 有任何疑惑可以回复我~ 2017-09-15 09:52:00
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信