Le Translator asynchrone de googletrans expose un argument unique proxy et le transmet à l'AsyncClient de HTTPX :

import asyncio
from googletrans import Translator

async def main():
    async with Translator(proxy='http://proxy.example:8080') as translator:
        translated = await translator.translate('Bonjour', dest='en')
        print(translated.text)

asyncio.run(main())

Le contexte asynchrone ferme le client HTTP sous-jacent. Appeler translate sans l'attendre relève d'une autre forme d'API et n'effectue pas cette opération asynchrone.

L'URL du proxy peut désigner un écouteur HTTP ordinaire même si le point de terminaison de traduction utilise HTTPS. Pour un test autorisé avec du texte non sensible, la liste de proxys HTTP fournit des candidats de points de terminaison publics. Lorsqu'un compte proxy est requis, on utilise les informations d'utilisateur correctement encodées de cette URL ou la configuration proxy prise en charge par HTTPX.

Les anciens exemples passaient des mappages proxies contenant des objets internes httpcore.SyncHTTPProxy. Ceux-ci dépendent d'interfaces googletrans et httpcore plus anciennes. Ne les combinez pas avec ce constructeur asynchrone public.

googletrans implémente une interface web de Google Translate ; c'est un paquet et un modèle d'authentification différents du SDK officiel Google Cloud Translation. Vérifiez quel client l'application importe réellement avant d'appliquer sa configuration proxy.

Articles similaires