GET、POST、DELETE のために Requests を呼び出す PyTumblr の TumblrRequest 実装では、次のようにジョブを起動します。

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

Tumblr API のデフォルトホストは HTTPS を使うため、https_proxy が該当する変数です。その HTTP URL は中間リスナーを識別します。API ホストと既存の OAuth 設定はそのままにしてください。

http_proxy は、その経路を必要とする該当の HTTP 宛先にのみ追加します。プロバイダーの SOCKS5 エンドポイント、または SOCKS5 プロキシ一覧のものには、Requests の SOCKS サポートで適切な socks5 または socks5h URL を使います。ポート 1080 のリスナーを http:// とラベル付けしてもプロトコルは変わりません。

別の Requests の例は動くのに PyTumblr が動かない場合は、それぞれがトランスポートをどう取得するかを確認します。無関係な requests.Session を作っても PyTumblr のモジュールレベルの呼び出しは変わりません。このソースには TumblrRequest のコンストラクターに注入セッションの引数はありません。

次に、実際の起動の環境を比較します。IDE やジョブサービスは、成功したリクエストに使ったターミナルの変数を継承しないことがあります。プロキシ認証は、必要な場合、Tumblr OAuth とは別です。

関連記事