python-telegram-bot 22: Proxy-Einstellungen für API-Aufrufe und Polling
In python-telegram-bot 22.8 müssen Sie sowohl proxy als auch get_updates_proxy konfigurieren, bevor Sie eine Polling-Anwendung bauen.
Polling hat in python-telegram-bot 22.8 ein eigenes Anforderungsobjekt. Ein erfolgreicher gewöhnlicher API-Aufruf beweist daher nicht, dass getUpdates dieselbe Proxy-Route erhielt.
Für eine Polling-Anwendung konfigurieren Sie beide Wege:
from telegram.ext import Application
proxy_url = 'http://proxy-user:[email protected]:8080'
application = (
Application.builder()
.token(bot_token)
.proxy(proxy_url)
.get_updates_proxy(proxy_url)
.build()
)proxy konfiguriert allgemeine Bot-API-Operationen; get_updates_proxy konfiguriert Polling. Verwenden Sie weiterhin die vorhandenen Handler und den Polling- oder Webhook-Lebenszyklus um diesen Anwendungsaufbau herum.
Die URL-Anmeldedaten sind Platzhalter. Beschaffen Sie echte Werte über den Anmeldedatenmechanismus des Deployments und prozentkodieren Sie reservierte Zeichen in den URL-Komponenten. Verwenden Sie das tatsächliche Schema des Vermittlers: HTTPXRequest akzeptiert HTTP-Proxy-URLs und unterstützt SOCKS5 mit der vom Paket benötigten SOCKS-Abhängigkeit. Die SOCKS5-Proxy-Liste liefert Endpunktkandidaten für dieses Protokoll, keine Proxy-Konto-Anmeldedaten.
Wenn die Anwendung eigene Objekte über request oder get_updates_request bereitstellt, konfigurieren Sie stattdessen diese Objekte konsistent. Eine Proxy-Einstellung im Builder und ein separat bereitgestelltes Anforderungsobjekt sind alternative Eingaben für den entsprechenden Weg.
Ältere Updater-Rezepte mit request_kwargs und urllib3_proxy_kwargs zielen auf eine andere Generation.