torrequest
torrequest copied to clipboard
All HTTPS requests are sent outside Tor
Environment
OS: linux x86_64 Python: 3.9.4 OpenSSL: 1.1.1k
Python deps:
urllib3==1.26.4
requests==2.25.1
torrequest==0.1.0 # (installed from pip)
Behavior
With plain (not https) connections:
>>> import requests
>>> import torrequest
>>> requests.get('http://ipecho.net/plain').text
192.0.2.102 # My real IP
>>> tr = torrequest.TorRequest()
>>> tr.get('http://ipecho.net/plain').text
203.0.113.75 # Someone else IP
With ssl connections
>>> import requests
>>> import torrequest
>>> requests.get('http://ipecho.net/plain').text
192.0.2.102 # My real IP
>>> tr = torrequest.TorRequest()
>>> tr.get('http://ipecho.net/plain').text
192.0.2.102 # My real IP!!!
This is due to author not setting the proper proxy type: https://github.com/erdiaker/torrequest/blob/8c1b5d0b90bbc5f302cc624a8ae61545542b99f4/torrequest.py#L29 socks5 should be socks5h.
Here is a temporary work around:
import torrequest
tr = torrequest.TorRequest()
tr.session.proxies.update({
'https': 'socks5h://localhost:9050', #assuming your local proxy port is 9050
})
tr.session.get('https://ipecho.net/plain').text