traceback がモジュールの初期化の中で失敗するなら、最初の API 呼び出しは import 中に起きた可能性があります。アプリケーションの後半でプロキシを割り当てても、その要求には間に合いません。

環境を意識するクライアントでは、起動時に経路を渡します:

http_proxy='http://proxy.example:8080' https_proxy='http://proxy.example:8080' python app.py

許可された公開ダウンロードでは、HTTP プロキシ一覧がこの起動時の HTTP プロキシ値の候補を提供します。Python 側の環境設定も、ネットワークを行う import より前に済ませる必要があります。別の明示的なトランスポートを使うクライアントは、独自の対応する入力を必要とします。

import が成功するとモジュールオブジェクトがキャッシュされます。変数を変えて再 import しても通常はそのオブジェクトとキャッシュされたクライアントが再利用され、初期化の確実なリセットにはなりません。起動時の挙動を比べるには、文書化された再設定か新しいプロセスを使ってください。

関連記事