Python
Proxyman の Automatic Setup で Python スクリプトとサーバーの HTTP/HTTPS 通信をキャプチャします。requests、http.client、urllib3、httpx、aiohttp に対応しています。
1. 新しい自動設定(v4.7.0 以降)✅
Proxyman v4.7.0 以降では、ワンクリックで Python の HTTP/HTTPS 通信をキャプチャできます。
- ワンクリックで設定できます。HTTP Proxy の設定や、自己署名証明書の手動での信頼設定は必要ありません。
- 多くの Python ライブラリに対応しています:requests、http.client、urllib3、httpx、aiohttp
使い方:
- Proxyman を開き、Setup メニュー → Automatic Setup を選択します
- Open New Terminal をクリックします
- 必要に応じて、AppleScript の権限確認を許可します
- 新しいターミナルウィンドウが開きます。そこで Python のバックエンドサーバーを起動するか、スクリプトを実行してください。Proxyman がすべての通信を自動的にキャプチャします。
- 完了 ✅

Proxyman Automatic Setup で Python の通信をキャプチャ
Automatic Setup のページをご覧ください:
2. 旧方式(非推奨)❌
1. スクリプトを使う方法
- GitHub の issue #1220 にあるこのスクリプトを使うと、Python 用の証明書を自動でインストールまたは削除できます。
- スクリプトをデスクトップフォルダに
script.pyという名前で保存します
- 証明書を追加:
$ python3 script.py add
- 証明書を削除
$ python3 script.py remove
macOS 12.2 以降では、必ず python3 を使用してください
クレジット:@novitae
2. 手動で設定する方法
Python 環境に Proxyman 証明書をインストールする
初期状態では、macOS の Python は Proxyman の自己署名証明書を信頼しません。そのため、HTTPS 通信をインターセプトすると SSL エラーが発生することがあります。
Python スクリプトの HTTPS 通信をインターセプトするには、~/.proxyman/proxyman-ca.pem にある Proxyman ルート証明書を使用するよう、Python に明示的に指定する必要があります。
新しいバージョンの Proxyman では、証明書は ~/Library/Application Support/com.proxyman.NSProxy/app-data/proxyman-ca.pem に保存されます。お使いの Mac に ~/.proxyman/proxyman-ca.pem が存在しない場合は、以下のコマンドでこのパスを使用するか、Certificate メニュー → Export → Root Certificate as PEM から証明書をエクスポートしてください。
以下の手順に従ってください:
- Mac に Proxyman 証明書をインストールします(すでに済んでいる場合はこの手順を省略してください。まだの場合は macOS ガイド をご覧ください)。
- ターミナルアプリで次のコマンドを実行します
$ export SSL_CERT_FILE=~/.proxyman/proxyman-ca.pem
$ export REQUESTS_CA_BUNDLE=~/.proxyman/proxyman-ca.pem
$ echo "export REQUESTS_CA_BUNDLE=~/.proxyman/proxyman-ca.pem" >> ~/.bash_profile ; source ~/.bash_profile
3. 完了です。
変更を元に戻す
Proxyman を使用しない場合は、次の行をコメントアウトして変更を元に戻してください:
# export REQUESTS_CA_BUNDLE=~/.proxyman/proxyman-ca.pem
~/.bash_profile 内の該当行
3. トラブルシューティング
3.1 Python コードから HTTP 通信を Proxyman でキャプチャできない
解決方法:Automatic Setup を使用してください。
参考資料
- https://github.com/ProxymanApp/Proxyman/issues/948#issuecomment-890520435
- https://github.com/ProxymanApp/Proxyman/issues/1220