PyTelegramBotAPI はプロキシのマッピングを要求する
Requests ベースの同期 API ヘルパーを HTTPS から SOCKS へのプロキシマッピングで設定します。
同期版 PyTelegramBotAPI のヘルパーは、プロキシ設定を Requests に渡します。アプリケーションの bot_token でボットを構築する前に、宛先スキームをプロキシ URL に対応付ける辞書を代入してください。SOCKS5 プロキシ一覧のホストとポートを、示されている SOCKS5 URL に当てはめられます。
import telebot
from telebot import apihelper
apihelper.proxy = {
"https": "socks5h://proxy.example.net:1080",
}
bot = telebot.TeleBot(bot_token)
キーと値の間のコロンがこれを辞書にします。カンマ区切りの文字列を含む波かっこの式はセットを作るため、Requests はプロキシのマッピングとして使えません。
https キーは通常の Telegram API の宛先に対応します。socks5h はプロキシ側でのホスト名解決を要求し、Requests の SOCKS サポートを必要とします。
apihelper.proxy は同期ヘルパー呼び出しのためのモジュールレベルの共有設定です。ワーカーを起動する前に設定してください。同時に動くボットのそばで変更すると、別のボットの経路が変わる可能性があります。AsyncTeleBot には別のヘルパーとトランスポートがあります。