我有一个正在运行的服务器,它利用stem来广播tor地址。问题是我需要使用 python 连接到洋葱地址。我尝试过 pyarti 和 torpy 但它们已经过时了。有谁知道有哪个图书馆可以让我这样做吗?
运行以下命令安装 Stem 库:
pip install stem
。
在 Python 脚本中导入必要的模块:
from stem import Signal
from stem.control import Controller
import socket
import socks
设置 SOCKS 代理以连接到 Tor:
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, 127.0.0.1 , 9050, True)
socket.socket = socks.socksocket
连接到 Tor 控制端口并进行身份验证:
with Controller.from_port(port=9051) as controller:
controller.authenticate()
向 Tor 发送 NEWNYM 信号以请求新电路和 IP 地址:
with Controller.from_port(port=9051) as controller:
controller.authenticate()
controller.signal(Signal.NEWNYM)
使用常规套接字连接到 Tor 地址:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('your_tor_address.onion', 80))
根据需要通过socket发送和接收数据:
s.sendall('Hello world')
print(s.recv(1024))
注意:将
'your_tor_address.onion'
替换为您要连接的实际 Tor 地址。
在运行脚本之前,请确保 Tor 正在运行并正确配置。