Skip to main content
Este guia troca o backend HTTP do python-telegram-bot (PTB) do httpx, o padrão, para o aiohttp. As duas são bibliotecas que fazem requisições HTTP. O backend httpx padrão pode lançar exceções NetworkError frequentes, como ReadError, em bots que fazem polling no Telegram por longos períodos, e trocar para o aiohttp é uma forma comum de fazê-las parar. Se o seu bot roda sem esses erros, você não precisa dessa mudança.

Instale o ptbcontrib

Você precisa do Python e da biblioteca python-telegram-bot:
Depois, instale o ptbcontrib, que oferece uma classe para lidar com as requisições feitas ao Telegram. O extra aiohttp_request dele também instala o aiohttp:
Adicione as mesmas dependências ao seu requirements.txt, para que a Square Cloud as instale durante o deploy:
requirements.txt

Troque o httpx pelo aiohttp

Importe o AiohttpRequest no arquivo em que você cria o client do bot:
Essa classe lida com todas as requisições ao Telegram no lugar do httpx padrão. Passe-a para o client do PTB como nos exemplos abaixo. Os dois leem o token do bot da variável de ambiente TELEGRAM_BOT_TOKEN, então ele nunca entra no seu código:

Rode na Square Cloud

Crie um arquivo squarecloud.app na raiz do projeto. Para um bot cujo arquivo principal é o main.py:
squarecloud.app
O seu ZIP contém o main.py, o requirements.txt e o squarecloud.app, sem o token. Depois, defina o token como a variável de ambiente TELEGRAM_BOT_TOKEN: em Configuração avançada, no formulário de upload, na página Variáveis de ambiente da aplicação (e depois reinicie o bot), ou pela CLI:
Veja Variáveis de ambiente para os detalhes, e o tutorial de bot do Telegram para o passo a passo completo do deploy.

Próximos passos

Bot do Telegram

Crie, faça o deploy e teste um bot do Telegram do zero.

Variáveis de ambiente

Gerencie o token do seu bot e outros segredos.

A aplicação não inicia

Corrija ModuleNotFoundError e outras falhas na inicialização.

Gostou desse artigo?

  • Criamos este conteúdo com o máximo de cuidado para oferecer a melhor ajuda possível. Se o artigo contribuiu de alguma forma, valorize nosso trabalho! Desenvolvedores já avaliaram a Square Cloud com 4,9/5 em 402 avaliações no Google e Trustpilot: deixe a sua também! Isso nos ajuda a entender o que é mais importante para você.

Google Reviews

Deixe sua avaliação no Google Reviews.

Trustpilot

Deixe sua avaliação no Trustpilot.