/
opt
/
alt
/
python38
/
lib
/
python3.8
/
site-packages
/
/opt/alt/python38/lib/python3.8/site-packages
mkdir
upload
Name
Size
Mode
Actions
aiodns/
-
0755
rm
aiodns-3.0.0-py3.8.egg-info/
-
0755
rm
async_lru-1.0.2-py3.8.egg-info/
-
0755
rm
async_timeout/
-
0755
rm
async_timeout-1.3.0-py3.8.egg-info/
-
0755
rm
attr/
-
0755
rm
attrs-17.4.0-py3.8.egg-info/
-
0755
rm
blinker/
-
0755
rm
blinker-1.4-py3.8.egg-info/
-
0755
rm
cached_property-1.3.0-py3.8.egg-info/
-
0755
rm
cerberus/
-
0755
rm
Cerberus-1.3.4-py3.8.egg-info/
-
0755
rm
certifi/
-
0755
rm
certifi-2018.4.16-py3.8.egg-info/
-
0755
rm
chardet/
-
0755
rm
chardet-3.0.4-py3.8.egg-info/
-
0755
rm
click/
-
0755
rm
click-6.6-py3.8.egg-info/
-
0755
rm
daemon/
-
0755
rm
distro-1.6.0-py3.8.egg-info/
-
0755
rm
funcsigs/
-
0755
rm
funcsigs-1.0.2-py3.8.egg-info/
-
0755
rm
humanize/
-
0755
rm
humanize-0.0.0-py3.8.egg-info/
-
0755
rm
idna/
-
0755
rm
idna-2.5-py3.8.egg-info/
-
0755
rm
jwt/
-
0755
rm
lockfile/
-
0755
rm
lockfile-0.12.2-py3.8.egg-info/
-
0755
rm
mock/
-
0755
rm
mock-3.0.5-py3.8.egg-info/
-
0755
rm
pbr/
-
0755
rm
pbr-1.8.1-py3.8.egg-info/
-
0755
rm
peewee_migrate/
-
0755
rm
peewee_migrate-0.6.4-py3.8.egg-info/
-
0755
rm
pip/
-
0755
rm
pip-22.2.1.dist-info/
-
0755
rm
pkg_resources/
-
0755
rm
ply/
-
0755
rm
ply-3.8-py3.8.egg-info/
-
0755
rm
pycparser/
-
0755
rm
pycparser-2.14-py3.8.egg-info/
-
0755
rm
PyJWT-2.1.0-py3.8.egg-info/
-
0755
rm
python_daemon-2.3.0-py3.8.egg-info/
-
0755
rm
python_pam-1.8.4-py3.8.egg-info/
-
0755
rm
sentry_sdk/
-
0755
rm
sentry_sdk-0.7.10-py3.8.egg-info/
-
0755
rm
setuptools/
-
0755
rm
setuptools-58.3.0.dist-info/
-
0755
rm
six-1.12.0-py3.8.egg-info/
-
0755
rm
typing_extensions-3.7.4.3-py3.8.egg-info/
-
0755
rm
urllib3/
-
0755
rm
urllib3-1.26.6-py3.8.egg-info/
-
0755
rm
_distutils_hack/
-
0755
rm
__pycache__/
-
0755
rm
async_lru.py
6124
0644
edit
dl
rm
cached_property.py
3900
0644
edit
dl
rm
distro.py
48414
0644
edit
dl
rm
distutils-precedence.pth
152
0644
edit
dl
rm
pam.py
7556
0644
edit
dl
rm
PySocks-1.5.7-py3.8.egg-info
322
0644
edit
dl
rm
six.py
32452
0644
edit
dl
rm
socks.py
29952
0644
edit
dl
rm
sockshandler.py
2913
0644
edit
dl
rm
typing_extensions.py
83727
0644
edit
dl
rm
Edit:
/opt/alt/python38/lib/python3.8/site-packages/sockshandler.py
(2913B)
#!/usr/bin/env python """ SocksiPy + urllib2 handler version: 0.3 author: e<e@tr0ll.in> This module provides a Handler which you can use with urllib2 to allow it to tunnel your connection through a socks.sockssocket socket, with out monkey patching the original socket... """ import ssl try: import urllib2 import httplib except ImportError: # Python 3 import urllib.request as urllib2 import http.client as httplib import socks # $ pip install PySocks def merge_dict(a, b): d = a.copy() d.update(b) return d class SocksiPyConnection(httplib.HTTPConnection): def __init__(self, proxytype, proxyaddr, proxyport=None, rdns=True, username=None, password=None, *args, **kwargs): self.proxyargs = (proxytype, proxyaddr, proxyport, rdns, username, password) httplib.HTTPConnection.__init__(self, *args, **kwargs) def connect(self): self.sock = socks.socksocket() self.sock.setproxy(*self.proxyargs) if type(self.timeout) in (int, float): self.sock.settimeout(self.timeout) self.sock.connect((self.host, self.port)) class SocksiPyConnectionS(httplib.HTTPSConnection): def __init__(self, proxytype, proxyaddr, proxyport=None, rdns=True, username=None, password=None, *args, **kwargs): self.proxyargs = (proxytype, proxyaddr, proxyport, rdns, username, password) httplib.HTTPSConnection.__init__(self, *args, **kwargs) def connect(self): sock = socks.socksocket() sock.setproxy(*self.proxyargs) if type(self.timeout) in (int, float): sock.settimeout(self.timeout) sock.connect((self.host, self.port)) self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file) class SocksiPyHandler(urllib2.HTTPHandler, urllib2.HTTPSHandler): def __init__(self, *args, **kwargs): self.args = args self.kw = kwargs urllib2.HTTPHandler.__init__(self) def http_open(self, req): def build(host, port=None, timeout=0, **kwargs): kw = merge_dict(self.kw, kwargs) conn = SocksiPyConnection(*self.args, host=host, port=port, timeout=timeout, **kw) return conn return self.do_open(build, req) def https_open(self, req): def build(host, port=None, timeout=0, **kwargs): kw = merge_dict(self.kw, kwargs) conn = SocksiPyConnectionS(*self.args, host=host, port=port, timeout=timeout, **kw) return conn return self.do_open(build, req) if __name__ == "__main__": import sys try: port = int(sys.argv[1]) except (ValueError, IndexError): port = 9050 opener = urllib2.build_opener(SocksiPyHandler(socks.PROXY_TYPE_SOCKS5, "localhost", port)) print("HTTP: " + opener.open("http://httpbin.org/ip").read().decode()) print("HTTPS: " + opener.open("https://httpbin.org/ip").read().decode())
Save
cmd:
run