【问题标题】:How to get my IP with Python 3, socket and proxy (TOR)?如何使用 Python 3、套接字和代理 (TOR) 获取我的 IP?
【发布时间】:2017-08-01 23:20:44
【问题描述】:

我尝试使用一些第三方服务,例如ipify.com,但很容易得到Max retries 异常,因为我发送了很多请求。

所以我找到了一种非常简单的方法来通过 Google DNS (link) 获取我的 IP。代码如下:

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("8.8.8.8", 80))
print(s.getsockname()[0])
s.close()

另外,我读过几篇文章(link 1link 2link 3),据我了解,通过代理发送HTTP GET 请求和socket 模块非常容易。

但我不明白,如何将这两种技术合并并通过代理连接到 8.8.8.8。

需要您的帮助,提前致谢。

【问题讨论】:

    标签: python sockets proxy tor


    【解决方案1】:

    您无法合并这些技术,因为您使用的是 DGRAM (UDP) 套接字,and Tor only proxies TCP connections

    因此您需要连接到基于 TCP 的服务器。最好的选择是您自己的服务器 - 在 AWS 转储 SERVER_IP 上设置一些东西相当容易,并且根据您的负载,它可能不会花费太多 - 如果有的话。或者您可以使用免费的 IP 查询服务器,但轮换它们(在每个请求中使用不同的服务器),以确保您不会超过允许的阈值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-11
      • 1970-01-01
      • 2013-07-14
      相关资源
      最近更新 更多