Python requests.get代理不工作?

Python requests.get代理不工作?,python,proxy,python-requests,Python,Proxy,Python Requests,我是一名新开发人员,请原谅我的无知 我正在尝试使用代理访问Python中的一些网页。我已经尝试将urllib2和请求模块与我认为有效的各种代理一起使用。但是,当我去一个站点验证我的ip是否显示为代理时,它仍然显示我的实际ip地址,而不是代理 这使我得出结论,有四种可能的情况: 这些模块坏了。这似乎不太可能,但有可能 我的代码不正确。极有可能,但我无法具体确定任何错误 有一些方法可以检测根IP,即使它们是通过代理路由的 一些我没想到的事情 感谢您的帮助 import requests import

我是一名新开发人员,请原谅我的无知

我正在尝试使用代理访问Python中的一些网页。我已经尝试将urllib2和请求模块与我认为有效的各种代理一起使用。但是,当我去一个站点验证我的ip是否显示为代理时,它仍然显示我的实际ip地址,而不是代理

这使我得出结论,有四种可能的情况:

  • 这些模块坏了。这似乎不太可能,但有可能
  • 我的代码不正确。极有可能,但我无法具体确定任何错误
  • 有一些方法可以检测根IP,即使它们是通过代理路由的
  • 一些我没想到的事情 感谢您的帮助

    import requests
    import urllib2
    from bs4 import BeautifulSoup
    
    # Using requests module
    proxy_dict = {"http":"http://123.45.172.115:8080"}
    url = 'https://check.torproject.org/'
    response = requests.get(url, proxies=(proxy_dict))
    html = response.content
    soup = BeautifulSoup(html)
    ip = str(soup.b.text)
    
    # Using urllib2
    prox = urllib2.ProxyHandler(proxy_dict)
    opener = urllib2.build_opener(prox, urllib2.HTTPHandler(debuglevel=1))
    urllib2.install_opener(opener)
    response = opener.open(url)
    

    你的代码似乎很正确。我怀疑这些站点实际上使用了X_FORWARDED_FOR或其他类似的HTTP头值,这使得您的选项3最有可能


    您所有的示例都使用我的原始IP地址而不是代理地址,但当我通过VPN跳转时除外,这表明他们实际上正在使用此标头。

    我遇到了类似的问题,结果证明这是一个透明的代理,根IP正在传递。第三个选择

    您可以通过运行一个请求来进一步测试这一点


    这将显示您的请求所经过的任何透明代理,因此您可以测试代理是否实际工作

    你似乎正确地传递了论点。您是否尝试过一些不同的“检查我的IP”网站,如果代理是透明的HTTP代理,并且正在添加包含真实IP的头?@Anorov,我尝试过,并且。如果您的理论认为代理是一个带有头的透明HTTP代理,那么我如何确定是否是这种情况?在您控制的服务器上设置一个小型PHP脚本,它只执行
    我知道这是不久前发布的,但我遇到了完全相同的问题,想知道是否有人能提出一个变通方法/解决方案?如果有人有,我也想要一个变通方法。