python使用带鉴权的sock5代理
使用Python通过socks5代理进行requests请求需要使用第三方库 requests 和 PySocks,PySocks 是Python的 SOCKS 客户端库。
安装依赖库
首先需要安装 requests 和 PySocks 两个库,可以使用 pip 进行安装,如下所示:
pip install requests pip install PySocks
导入依赖库
import requests import socks import socket
设置sock5代理
socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 1080) socket.socket = socks.socksocket
其中,第一个参数 socks.SOCKS5 表示使用 SOCKS5 代理,第二个参数为代理地址,第三个参数为代理端口号。这里使用的是本地的代理地址和端口号,可以根据需要进行修改。
发送请求
response = requests.get(url)
可以像平常一样使用 requests.get() 或者其他请求方法来发送请求。
完整的代码示例
import requests import socks import socket socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 1080) socket.socket = socks.socksocket response = requests.get("https://www.example.com") print(response.text)
在上面的示例中,我们使用 requests.get() 方法发送了一个 GET 请求,代理地址为 127.0.0.1,代理端口号为 1080
使用需要鉴权的socks5代理
如果你的 SOCKS5 代理需要用户名和密码进行身份验证,可以在设置代理时添加 username 和 password 参数。
socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 1080, username="your_username", password="your_password")
其中,your_username 和 your_password 分别为代理服务器的用户名和密码,根据实际情况进行修改即可。
完整的代码示例:
import requests import socks import socket socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 1080, username="your_username", password="your_password") socket.socket = socks.socksocket response = requests.get("https://www.example.com") print(response.text)
在这个示例中,我们使用带有身份验证的 SOCKS5 代理向 https://www.example.com 发送了一个 GET 请求。