python-telegram-bot (PTB) の HTTP バックエンドを、デフォルトの httpx から aiohttp に変更します。どちらも HTTP リクエストを行うライブラリです。デフォルトの httpx バックエンドでは、Telegram を長時間ポーリングするボットで ReadError などの NetworkError 例外が頻繁に発生することがあり、aiohttp への切り替えはこれを解消するための一般的な方法です。ボットでこれらのエラーが発生していない場合は、この変更は不要です。
ptbcontrib のインストール
Python とpython-telegram-bot ライブラリが必要です。
ptbcontrib をインストールします。aiohttp_request エクストラにより aiohttp もインストールされます。
requirements.txt にも追加します。
requirements.txt
httpx から aiohttp に切り替える
ボットクライアントを作成するファイルでAiohttpRequest をインポートします。
httpx の代わりに Telegram へのすべてのリクエストを処理します。以下の例のように PTB クライアントに渡してください。どちらの例もボットトークンを環境変数 TELEGRAM_BOT_TOKEN から読み込むため、トークンがコードに入ることはありません。
Square Cloud で実行する
プロジェクトのルートにsquarecloud.app ファイルを作成します。メインファイルが main.py のボットの場合:
squarecloud.app
main.py、requirements.txt、squarecloud.app を入れ、トークンは含めません。
次に、トークンを環境変数 TELEGRAM_BOT_TOKEN として設定します。アップロードフォームの 詳細設定、アプリケーションの 環境変数 ページ (設定後にボットを再起動)、または CLI で設定できます。
次のステップ
Telegram ボット
Telegram ボットを一から作成、デプロイ、テストします。
環境変数
ボットのトークンやその他のシークレットを管理します。
アプリが起動しない
ModuleNotFoundError などの起動エラーを修正します。
この記事は役に立ちましたか?
- 私たちは可能な限り最良のサポートを提供するため、細心の注意を払ってこのコンテンツを作成しました。 この記事が少しでもお役に立ったなら、ぜひ私たちの活動を応援してください。すでに多くの開発者が Google と Trustpilot で Square Cloud に 402 件のレビューで 4.9/5 の評価をつけています。あなたのレビューもぜひ残してください。あなたにとって何が最も重要かを理解する助けになります。
Google レビュー
Google レビューにあなたのレビューを残してください。
Trustpilot
Trustpilot にあなたのレビューを残してください。

