鱼C论坛

 找回密码
 立即注册
查看: 635|回复: 4

为什么使用代理A访问目标网站B,返回的确实A的内容?

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

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

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

x
  1. def visitor(url = "http://ip.chinaz.com/getip.aspx"):
  2.     print(url)
  3.     iplist = ['120.79.153.160:80']

  4.     proxy_support = urllib.request.ProxyHandler({'http':random.choice(iplist)})
  5.     opener = urllib.request.build_opener(proxy_support)
  6.     opener.addheaders = [('User-Agent','Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36')]
  7.     urllib.request.install_opener(opener)
  8.     response = urllib.request.urlopen(url)
  9.     html = response.read().decode('utf-8')
  10.     print(html)

  11. if __name__ == "__main__":
  12.     visitor('')
复制代码


代理网站A  :  120.79.153.160:80这个地址可以查得到
目标网站B  :  http://ip.chinaz.com/getip.aspx   输入后返回一个ip

使用vistor()直接访问默认目标B,返回的是代理网站A
使用vistor('https://blog.csdn.net/c406495762/article/details/60137956')  返回的是目标网站B

这是什么原因???
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-7-17 13:05:26 | 显示全部楼层
本帖最后由 零度非安全 于 2018-7-17 13:07 编辑

代理 IP 问题,尝试更换 iplist  中的代理,我用了我自已的服务器 IP 作为代理访问 http://ip.chinaz.com/getip.aspx,如下:
QQ截图20180717130605.png
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-17 16:35:28 | 显示全部楼层
多谢~  试了试好像是可以了
现在又有个问题,使用代理访问的这个网站   http://ip.chinaz.com/getip.aspx,为什么返回的一直本机的外网ip???
是本机上还需要做什么配置吗??
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-17 16:37:00 | 显示全部楼层
这是参考你贴的代码写出的
  1. import urllib.request
  2. import urllib.error
  3. def test(http_url = "http://ip.chinaz.com/getip.aspx"):

  4.     proxies = {
  5.         "https" : "https://114.115.144.137:3128" # 代理ip
  6.     }

  7.     proxy_support = urllib.request.ProxyHandler(proxies)
  8.     opener = urllib.request.build_opener(proxy_support)
  9.     opener.add_header = ("user_agent" , "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36")
  10.     try:
  11.         response = opener.open(http_url)
  12.         html = response.read().decode('utf-8')
  13.         print(html)
  14.     except urllib.error.HTTPError as e:
  15.         print('出错!')
  16.         print(e.reason)

  17. if __name__ == "__main__":
  18.     test()
复制代码


代理的ip是可以用的。。  为什么就是一直返回的我本机的外网ip
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-17 17:57:06 | 显示全部楼层
好像是https跟http   跟   代理ip本身的毛病。。   
能访问但是返回自己的ip,可能是网站的http跟使用的代理不一样,可能代理是https的。
还有这网上的代理ip好多都不能用啊    弄得我一直怀疑程序出的问题   
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-31 19:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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