我想检查洋葱地址(在我的例子中是torchat的ID)是否在线。既然简单的ping不起作用,我怎么能做到这一点呢。
我尝试用下面的python代码获得状态响应:
import requests
url = 'http://rrcc5uuudhh4oz3c.onion'
resp = requests.get(url,
proxies=dict(http='socks5h://127.0.0.1:9050',
https='socks5h://127.0.0.1:9050'))
print(resp)
输出为:
但是,当我尝试连接到Torchat ID以查看它是否可访问时,我得到:无法建立新连接:0x05:连接被拒绝
。
是否有其他方法可以从Torchat ID获取状态码响应,以查看它是否仍处于活动状态?
关于Torchat ID:https://www.deepdotweb.com/jolly-rogers-security-guide-for-beginners/tor-chat/
下面您可以看到Torchat。用户可以是活动的。如果它们是活动的,应该能够得到状态响应。Torchat ID是普通的。洋葱地址。
报价(链接):
the first time you open TorChat your computer might generate
d0dj309jfj94jfgf.onion and from here on out, d0dj309jfj94jfgf will be
your TorChat ID that you give out to people that you want to be able
to message you
如果你得到ProxySchemeUnknown
异常时,试图使用袜子
或ocks5h
与python-请求,这要么是因为版本太旧,或者你还需要安装请求[袜子]
包...
要为请求安装必要的socks代理支持,请运行:
pip3 install -U requests[socks]
# or for Python 2
pip install -U requests[socks]
另外,因为您将使用请求的SOCKS支持,所以不应该用SOCKS套接字“猴补丁”默认套接字。这是不必要的,可能会干扰其他不应该使用Tor的套接字交互。要解决此问题,只需删除以下两行:
socks.set_default_proxy(socks.SOCKS5, "127.0.0.1", 9150)
socket.socket = socks.socksocket
这在使用请求的代理时是不必要的。
您可以尝试使用httping
作为一种超级简单的方法来检查一个站点是否已启动,并且没有响应正常的ping请求。
例如,像这样安装在linux上:sudo apt安装http ping
或OSXbrew安装http ping
。
然后,要检查特定的url,请运行:httping-grcc5uuuudhh4oz3c。洋葱-x127.0。0.1:9050
将检查Intel Exchange(一个流行的黑暗网络目的地)是否可用并处于活动状态。这假设您正在运行Tor,并且SOCKS代理是本地主机上的默认9050。
就我而言,结果是:
PING rrcc5uuudhh4oz3c.onion:80 (/):
connected to rrcc5uuudhh4oz3c.onion:80 (89 bytes), seq=0 time= 0.56 ms
connected to rrcc5uuudhh4oz3c.onion:80 (89 bytes), seq=1 time= 0.89 ms
connected to rrcc5uuudhh4oz3c.onion:80 (89 bytes), seq=2 time= 0.71 ms
connected to rrcc5uuudhh4oz3c.onion:80 (89 bytes), seq=3 time= 0.85 ms
connected to rrcc5uuudhh4oz3c.onion:80 (89 bytes), seq=4 time= 0.73 ms
connected to rrcc5uuudhh4oz3c.onion:80 (89 bytes), seq=5 time= 1.06 ms
connected to rrcc5uuudhh4oz3c.onion:80 (89 bytes), seq=6 time= 1.04 ms
希望有帮助。您可以在python中使用call命令或subprocess命令,并以编程方式调用同一调用。