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.

Ähnliche Artikel