Python 的 Tor 客户端库

问题描述 投票:0回答:1

我有一个正在运行的服务器,它利用stem来广播tor地址。问题是我需要使用 python 连接到洋葱地址。我尝试过 pyarti 和 torpy 但它们已经过时了。有谁知道有哪个图书馆可以让我这样做吗?

python tor
1个回答
0
投票
  1. 运行以下命令安装 Stem 库:

    pip install stem

  2. 在 Python 脚本中导入必要的模块:

    from stem import Signal
    from stem.control import Controller
    import socket
    import socks
    
  3. 设置 SOCKS 代理以连接到 Tor:

    socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5,  127.0.0.1 , 9050, True)
    socket.socket = socks.socksocket
    
  4. 连接到 Tor 控制端口并进行身份验证:

    with Controller.from_port(port=9051) as controller:
        controller.authenticate()
    
  5. 向 Tor 发送 NEWNYM 信号以请求新电路和 IP 地址:

    with Controller.from_port(port=9051) as controller:
        controller.authenticate()
        controller.signal(Signal.NEWNYM)
    
  6. 使用常规套接字连接到 Tor 地址:

    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.connect(('your_tor_address.onion', 80))
    
  7. 根据需要通过socket发送和接收数据:

    s.sendall('Hello world')
    print(s.recv(1024))
    

注意:将

'your_tor_address.onion'
替换为您要连接的实际 Tor 地址。

在运行脚本之前,请确保 Tor 正在运行并正确配置。

© www.soinside.com 2019 - 2024. All rights reserved.