Как только python requests
будет объединен с SOCKS5
запросом на вытягивание, это будет так же просто, как использование словаря proxies
:
#proxy
# SOCKS5 proxy for HTTP/HTTPS
proxies = {
'http' : "socks5://myproxy:9191",
'https' : "socks5://myproxy:9191"
}
#headers
headers = {
}
url='http://icanhazip.com/'
res = requests.get(url, headers=headers, proxies=proxies)
См. раздел поддержка SOCKS-прокси.
Другой вариант, в случае, если вы не можете дождаться готовности request
, когда вы не можете использовать requesocks
- как в GoogleAppEngine из-за отсутствия встроенного модуля pwd
, это использовать PySocks, упомянутое выше:
- Возьмите файл
socks.py
из репозитория и поместите копию в корневую папку;
- Добавьте
import socks
и import socket
На этом этапе настройте и привяжите сокет перед использованием с urllib2
— в следующем примере:
import urllib2
import socket
import socks
socks.set_default_proxy(socks.SOCKS5, "myprivateproxy.net",port=9050)
socket.socket = socks.socksocket
res=urllib2.urlopen(url).read()
person
loretoparisi
schedule
05.04.2016