python - requests.exceptions.ConnectTimeout: HTTPSConnectionPool(host='api.telegram.org', port=443): # python telegram bot using pytelegrambotapi and Tor
问题描述
当我想使用返回错误的 Tor 连接到电报机器人时
requests.exceptions.ConnectTimeout: HTTPSConnectionPool(host='api.telegram.org', port=443): 最大重试次数超出 url: /bot/getUpdates?offset=1&timeout=20 (由 ConnectTimeoutError(<urllib3.connection.HTTPSConnection位于 0x7f28923f4a30> 的对象,“与 api.telegram.org 的连接超时。(连接超时 = 20)”))
解决方案
首先使用
然后运行 commeds blow安装torsudo apt install tor
sudo apt install privoxy torsocks
nano /etc/privoxy/config
然后pip install pysocks
在包含的 uncommnet 行之后 forward-socks5t / 127.0.0.1:9050 .
现在
sudo systemctl enable privoxy.service
sudo systemctl start privoxy.service
现在确保在/etc/tor/torsocks.conf
文件中的表扬打击是 uncommned
TorAddress 127.0.0.1
TorPort 9050
重新启动系统
接下来在你的机器人源代码中添加代码
from telebot import apihelper
apihelper.proxy = {'https': 'socks5h://127.0.0.1:9050',
# 'http':'http://127.0.0.1:8118',
# 'https':'https://127.0.0.1:8118'
}
推荐阅读
- ssis - 上个月 dateRange 的 Google Analytics API
- javascript - 用字符串构建范围
- batch-file - 有人可以帮助我理解混淆我的文件的代码,以便我可以反转它吗?
- laravel - Laravel7 + Queue & Supervisor => 邮件不发送
- alfresco - 如何从共享客户端 javascript 访问 alfresco 全局属性?
- javascript - 占位符在 select2 为空后不显示
- javascript - 在Javascript中从今天的当前日期获取过去7天的每个日期
- python - 从网络选项卡上的响应中获取信息
- r - 如果我手动更改 R Shiny 中的第一个 dateRangeInput,则无法更新第二个 dateRangeInput
- javascript - jQuery:通过单击按钮而不是重新启动来暂停声音