【问题标题】:Requests Proxy not Working请求代理不工作
【发布时间】:2014-08-03 03:04:20
【问题描述】:

我目前正在编写一个用于测试的爬虫,想要使用不同的 IP 访问该站点,我找到了很多关于使用代理的信息并尝试了几次,但是当我访问一个显示使用的 IP 的站点时请求,它显示了我的计算机的 IP。

我正在使用我在网上找到的免费代理。

这是我的代码:

import requests
proxy = {'SOCKS5': '24.145.195.60:27595'}
response = requests.get('http://www.whatsmyip.de/', proxies=proxy)
print response

非常感谢任何帮助!

【问题讨论】:

  • 您使用的代理是什么?介意发布一个链接..你需要使用像bs4这样的html解析器来实际打印ip
  • 我在这个网站上找到了代理:proxylist.hidemyass.com/search-1305361 并认为请求库将请求发送到该服务器,如果从它返回。我的概念可能有点错误,但找不到更多信息。

标签: python web-scraping python-requests


【解决方案1】:

您需要为HTTP 和/或HTTPS 协议定义一个代理。我不确定requests 是否适用于SOCKS 协议

这对我有用。

import requests
import bs4

proxy = {"http": "115.227.195.213"}
response = requests.get('http://www.whatsmyip.de/', proxies=proxy)
soup = bs4.BeautifulSoup(response.text)

print soup.h3.text

注意:它使用bs4 module 打印ip,我使用了与HTTP 兼容的代理服务器

【讨论】:

  • 感谢您的帮助,不幸的是,该站点仍然收到我的真实 IP 地址。欢迎任何其他建议!
  • @user3655289 使用 HTTP 服务器应该可以解决您的问题,请使用不同的 HTTP 服务器,因为我的回答中的 HTTP 服务器已过时
  • 太棒了!它现在工作了,一切都很好!谢谢好先生。最后一个问题 - 我什么时候使用 http,什么时候使用 https 代理?
  • @user3655289 如果你问here
猜你喜欢
  • 1970-01-01
  • 2018-09-29
  • 1970-01-01
  • 2021-03-07
  • 1970-01-01
  • 2021-10-27
  • 2018-06-05
  • 2012-09-18
  • 2018-04-17
相关资源
最近更新 更多