python requests 如何使用socket5代理

2023-04-15 00:00:00 python 代理 如何使用

使用 Python 的 requests 库来访问 SOCKS5 代理服务器,需要使用第三方库 socks。具体步骤如下:

安装 socks 库:

pip install PySocks

导入 requests 和 socks 库:

import requests
import socks

设置 SOCKS5 代理服务器的地址和端口号:

proxies = {
    'http': 'socks5://127.0.0.1:1080',
    'https': 'socks5://127.0.0.1:1080'
}

使用 socks 库的 socks5 代理方式,进行 requests 的 HTTP 访问:

socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 1080)
socket.socket = socks.socksocket
response = requests.get("http://httpbin.org/ip")

完整的代码示例如下:

import requests
import socks
import socket

# 设置代理服务器地址和端口号
proxies = {
    'http': 'socks5://127.0.0.1:1080',
    'https': 'socks5://127.0.0.1:1080'
}

# 设置 socks5 代理
socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 1080)
socket.socket = socks.socksocket

# 使用 requests 库进行 HTTP 访问
response = requests.get("http://httpbin.org/ip", proxies=proxies)
print(response.text)

以上代码中,我们使用 requests.get() 函数发起 HTTP GET 请求,并传入 proxies 参数,指定 HTTP 和 HTTPS 的代理地址。在 socks 库中,我们通过 set_default_proxy() 函数设置 SOCKS5 代理,然后将 socks.socksocket 赋值给 socket.socket,实现对所有 HTTP 请求的代理。

相关文章