当前位置: 首页 > 面试题库 >

使用Python连接到Tor上的.onion网站吗?

曹经业
2023-03-14
问题内容

这是我到目前为止的代码

import socks
import socket
import requests
import json

socks.setdefaultproxy(proxy_type=socks.PROXY_TYPE_SOCKS5, addr="127.0.0.1", port=9050)
socket.socket = socks.socksocket

data = json.loads(requests.get("http://freegeoip.net/json/").text)

而且效果很好。问题是当我使用.onion网址时显示错误

无法建立新连接:[Errno -2]名称或服务未知

经过一番研究后,我发现尽管通过tor决议提出了http请求,但仍然在clearnet上出现。什么是正确的方法,这样我也可以通过网络解析域以连接到.onionurl?


问题答案:

尽可能避免猴子打补丁。如果您使用的是现代版本的请求,那么您应该已经具有此功能。

import requests
import json

proxies = {
    'http': 'socks5h://127.0.0.1:9050',
    'https': 'socks5h://127.0.0.1:9050'
}

data = requests.get("http://altaddresswcxlld.onion",proxies=proxies).text

print(data)

使用该socks5h://方案指定代理很重要,以便可以通过SOCKS处理DNS解析,以便Tor可以.onion正确解析地址。



 类似资料:
  • 我对python还很陌生。我正试图为我正在从事的一个项目编写一个非常简单的web刮板。在这个过程中,我试图使用Tor来更改我的IP地址,这样我就不会与我正在刮取的服务断开连接。在将新IP添加到我的项目之前,我试图测试特定于获取新IP的代码。这是我正在测试的代码。 当我执行此操作时,会出现以下错误: IP 1:Traceback(最近一次调用last):文件“scrapingTools.py”,第8

  • 问题内容: 我想使用Tor向网页发出多个GET请求。我想为每个请求使用不同的ipaddress。 使用此,我提出了一个请求。如何更改ipaddress来做另一个? 问题答案: 这是您要使用的代码(使用来下载词干包) 祝你好运,希望能成功。

  • 问题内容: 我在通过Ruby-Watir Webdriver连接到Tor时遇到问题。 我使用Tor浏览器套件。问题是,当我尝试通过Watir(Selenium)连接时,似乎无法打开Tor而不是常规的Firefox。 在研究类似问题时,我尝试了以下方法: 当我使用上述代码时,我仍然会打开普通的firefox浏览器,并且无法连接到洋葱站点。 有什么想法吗?是否需要将Tor浏览器连接到我的webdriv

  • 问题内容: 如何使用Python ping网站或IP地址? 问题答案: 看到这个纯Python平由马修·考尔斯迪克森和延DIEMER。另外,请记住,Python需要root才能在Linux中生成ICMP(即ping)套接字。 源代码本身易于阅读,请参阅和的实现verbose_ping以Ping.do获取启发。

  • 我对python很陌生。我正在尝试使用python和ibm_db连接到informix服务器。连接()。然而,我似乎无法成功,错误消息也帮不上忙。 使用java和jdbc,我可以通过以下连接url成功连接: jdbc:informix-sqli://10.20.30.40:1234/mydb:INFORMIXSERVER=foo_bar;用户=用户;密码=通过; 我尝试使用ibm_db是: 但它给

  • 我正在使用此代码: 我试图做的是获取网站的原始html。但是,当我运行代码时,我得到了这个错误: 我正在使用这段代码成功地获取多个其他网站的HTML,但这段代码不起作用。 有什么问题?我该如何解决? 编辑:在firefox中加载站点,从中获取cookie并将其传入: 使页面加载,但这并不好,因为它不能一遍又一遍地使用。