【发布时间】:2021-01-17 04:39:39
【问题描述】:
解决问题:我正在构建一个跨 Mastodon 和 Secure Scuttlebutt 协议的社交网络。 Scuttlebutt 数据过于密集,不允许在线交流。 Mastodon 过于集中。
我的网络为每个用户分配一个洋葱地址(计划稍后编写我自己的基础,因为 50 多个字符的地址是极端的)。我目前在 Windows 上获得了 TOR 专家包。
我当前的代码是:
import requests
session = requests.session()
session.proxies = {"http":"socks5://localhost:9050", "https":"socks5://localhost:9050"}
当我尝试时:
session.get("https://google.com").text
它返回 Google 的代码。
当我请求 ident.me 时,它会返回一个 TOR IP 地址。但是,当我请求 https://facebookcorewwwi.onion 时,我得到:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\mary\AppData\Local\Programs\Python\Python38-32\lib\site-packages\requests\sessions.py", line 543, in get
return self.request('GET', url, **kwargs)
File "C:\Users\mary\AppData\Local\Programs\Python\Python38-32\lib\site-packages\requests\sessions.py", line 530, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\mary\AppData\Local\Programs\Python\Python38-32\lib\site-packages\requests\sessions.py", line 643, in send
r = adapter.send(request, **kwargs)
File "C:\Users\mary\AppData\Local\Programs\Python\Python38-32\lib\site-packages\requests\adapters.py", line 516, in send
raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: SOCKSHTTPSConnectionPool(host='facebookcorewwwi.onion', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.contrib.socks.SOCKSHTTPSConnection object at 0x035E1148>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))
我尝试设置超时,但这似乎也不起作用。每次我用 Google 搜索这个问题时,答案都会将我带到一个已有 3 年历史的博客,其中包含我已经尝试过的东西。
编辑: 在开始之前,我:
pip install requests[socks]
pip install requests[security]
我正在运行 Python 3.8。
【问题讨论】:
标签: python python-requests tor getaddrinfo