使用代理发出 python 3 请求

Make a python 3 request using proxy

我想使用 python 进行匿名网络请求 3.

我尝试了一些建议,例如:

我已经成功地使用这个片段获得了一个假的 ip:

安装

pip install requests requests[socks]

基本用法

import requests

def get_tor_session():
    session = requests.session()
    # Tor uses the 9050 port as the default socks port
    session.proxies = {'http':  'socks5://127.0.0.1:9150',
                       'https': 'socks5://127.0.0.1:9150'}
    return session

# Make a request through the Tor connection
# IP visible through Tor
session = get_tor_session()
print(session.get("http://httpbin.org/ip").text)
# Above should print an IP different than your public IP

# Following prints your normal public IP
print(requests.get("http://httpbin.org/ip").text)

但这只适用于端口 9150 并且当 tor 网络浏览器工作时。 我想在没有 tor 浏览器的情况下发出请求,因为我想将整个东西 Dockerize。

我读过有关 Socks5 的信息,如您所见,我已经安装了它,但是当我在同一个片段上向端口 9050 发出请求时,我得到:

requests.exceptions.ConnectionError: SOCKSHTTPConnectionPool(host='httpbin.org', port=80): Max retries exceeded with url: /ip (Caused by NewConnectionError(': Failed to establish a new connection: [WinError 10061] No connection could be made because the target machine actively refused it',))

我该如何解决?

谢谢!

10061 是 'connection refused'

这意味着在您尝试连接的那个端口上没有任何监听,没有服务启动并且运行(没有打开的端口)或[=20=目标 IP 上的]防火墙 阻止它

您可以使用 telnet 测试该端口

telnet `IP` `PORT`

并在 Windows 上检查此端口问题:

我也面临这个问题,在我的情况下我的 tor 服务不是 运行,实际上我使用的是 kalitorify 这是一个透明代理,每当我使用它时我都不是能够使用普通网站,例如 google 搜索或类似网站,因此为了使用这些网站,我关闭了我的 kalitorify 服务,这也关闭了您的 tor 服务

因此,如果您也在使用它,那么也请检查一次