在Google Colab中连接Tor遇[Errno 111]连接拒绝错误求助
解决Google Colab中使用reddit-account-generator时的ConnectionRefusedError问题
检查Tor代理端口匹配
Colab中Tor默认监听SOCKS5端口9050,但部分脚本可能硬编码使用Tor Browser的9150端口。打开仓库核心脚本,查找代理配置行,将socks5://127.0.0.1:9150替换为socks5://127.0.0.1:9050。
同时执行命令验证Tor端口状态:!netstat -tulpn | grep tor输出中应显示
127.0.0.1:9050的监听记录。验证Tor连通性
先排除Tor本身的网络问题,在Colab单元格中执行:!curl --socks5-hostname 127.0.0.1:9050 https://www.reddit.com如果返回Reddit页面源码,说明Tor链路正常;若失败,重启Tor服务重试:
!sudo service tor restart强制Tor更换出口节点
Colab服务器IP可能被Reddit或Tor出口节点限制,可修改Tor配置强制更换电路:- 编辑Tor配置文件:
!sudo nano /etc/tor/torrc - 添加以下两行:
NewCircuitPeriod 10 MaxCircuitDirtiness 10 - 保存后重启Tor:
!sudo service tor restart
或直接发送信号让Tor重建电路:
!pkill -HUP tor- 编辑Tor配置文件:
补全脚本依赖
确保脚本所需的代理相关依赖已正确安装:!pip install requests[socks] pysocks同时拉取仓库最新代码,避免旧版本兼容性问题:
!git pull手动注入代理配置
如果脚本未自动加载Tor代理,可在代码中手动为requests会话设置代理:import requests from requests.adapters import HTTPAdapter from urllib3.util.retry import Retry session = requests.Session() # 设置Tor代理 session.proxies = { "http": "socks5://127.0.0.1:9050", "https": "socks5://127.0.0.1:9050" } # 添加重试机制应对节点不稳定 retry_strategy = Retry( total=3, backoff_factor=1, status_forcelist=[429, 500, 502, 503, 504] ) adapter = HTTPAdapter(max_retries=retry_strategy) session.mount("https://", adapter) session.mount("http://", adapter)替换脚本中原有的requests会话初始化逻辑。
内容的提问来源于stack exchange,提问作者Alpha Beta
相关产品推荐
相关产品推荐

