Python3 - 使用Sock5代理的请求

时间:2015-08-02 23:41:37

标签: python-3.x proxy python-requests tor

有没有办法使用sock5代理对请求使用TOR?我知道请求只使用http代理...

import requests
r = requests.get('http://www.google.com',proxies= my_proxy)

2 个答案:

答案 0 :(得分:20)

您可以使用socks, socket个模块

import socks
import socket
from urllib import request

socks.set_default_proxy(socks.SOCKS5, "localhost", 9050)
socket.socket = socks.socksocket
r = request.urlopen('http://icanhazip.com')
print(r.read()) # check ips

socks包可以从多个包中安装,这些包是socksipy的分支。一个也适用于Python3的特定版本是PySocks。例如,您可以使用pip:

安装它
pip3 install PySocks

答案 1 :(得分:1)

我认为目前 requests 可以直接使用socks5。

import requests

url = 'https://example.com'
proxies = {'http': 'socks5://127.0.0.1:9150',
           'https': 'socks5://127.0.0.1:9150'}
r = requests.get(url, proxies=proxies)