我尝试使用某些第三方服务,例如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 1,link 2,link 3),根据我的理解,它很容易发送{{1使用HTTP GET
模块通过代理请求。
但我无法理解,如何合并这两种技术并通过代理连接到8.8.8.8。
需要你的帮助,提前谢谢。
答案 0 :(得分:1)
您无法合并这些技术,因为您正在使用DGRAM(UDP)套接字and Tor only proxies TCP connections。
因此您需要连接到基于TCP的服务器。最好的选择是你自己的服务器 - 在AWS转储SERVER_IP上设置一些东西相当容易,并且根据你的负载它可能会花费很多 - 如果有的话。或者您可以使用免费的IP查询服务器,但可以旋转它们(在每个请求中使用不同的服务器),以确保您不会超过允许的阈值。