Enc*_*ass 0 python socks python-requests
我目前使用它来连接socks5代理和paramiko.
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5,socks_hostname,socks_port, True, socks_username,socks_password)
paramiko.client.socket.socket = socks.socksocket
ssh = paramiko.SSHClient()
Run Code Online (Sandbox Code Playgroud)
但是,我希望在python中使用requesocks和paramiko的相同代理设置进行一些请求,并且找不到任何关于用户名和密码的内容.
此外,所有请求每次都使用不同的socks连接完成,全局设置可能会妨碍我的其他连接.
关于如何做到或有替代方法的任何想法?我当前的实现非常严重地使用python请求所以从那里转换到requesocks会很好,所以我不必重构所有内容.
注意:如何通过socks代理使python请求工作不起作用,因为它不使用socks5身份验证.
你可以使用PySocks:
pip install PySocks
Run Code Online (Sandbox Code Playgroud)
然后在你的python文件中:
import socket
import socks
import requests
socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 9050, True, 'socks5_user','socks_pass')
socket.socket = socks.socksocket
print(requests.get('http://ifconfig.me/ip').text)
Run Code Online (Sandbox Code Playgroud)
这个对我有用.但是我有另一个问题是为不同的请求会话使用不同的socks5代理.如果有人有解决方案,请提供帮助.
现代方式:
pip install -U requests[socks]
Run Code Online (Sandbox Code Playgroud)
然后
import requests
resp = requests.get('http://go.to',
proxies=dict(http='socks5://user:pass@host:port',
https='socks5://user:pass@host:port'))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3850 次 |
| 最近记录: |