技術リファレンス&アーキテクチャガイド

cURL to Python (requests / httpx / aiohttp) 変換 チートシート — リファレンスガイド

生の cURL コマンドを Python requests、非同期 httpx、aiohttp のイディオマティックなコードへ即時変換。DevTools 疑似ヘッダー自動除去と完全クライアントサイド実行。

主要パラメータ&設定項目

rawCurlstring

ターミナルや開発者ツールからコピーした生の cURL コマンド文字列。

初期値: Auto
wrapInFunctionboolean

生成コードを同期関数または非同期コルーチン(async def)でラップします。

初期値: true
cleanDevToolsboolean

Chrome/Edge の疑似ヘッダー(:authority、sec-ch-ua 等)を自動除去し Python の構文エラーを防ぎます。

初期値: true
jsonAsDictboolean

JSON 本文を Python の辞書型(dict)に変換し、json= 引数で渡します。

初期値: true

プロの活用テクニック&推奨設定

DevTools の疑似ヘッダー(:authority)自動クレンジング

ブラウザからコピーした cURL に含まれるコロン接頭辞付きヘッダー(:authority 等)は、Python の HTTP クライアントで InvalidHeader エラーを引き起こします。自動除去を有効にしておくことが推奨されます。

data=json.dumps() ではなく json= 引数を推奨

requests や httpx では json=payload を渡すことで、Content-Type: application/json の自動付与と UTF-8 直列化が自動処理されます。

requests.Session() による TCP 接続の再利用

同一ホストへ連続して通信する場合は Session() を利用し、TCP ハンドシェイクと Cookie を維持して通信オーバーヘッドを削減してください。

よくあるトラブルと解決策

InvalidHeader: Invalid leading colon in header name が発生する

「DevTools 疑似ヘッダーの自動除去」を有効化して、:authority や :method などの不正ヘッダーを辞書から削除してください。

サーバーから 415 Unsupported Media Type エラーが返される

データを文字列ではなく json=data 引数で渡しているか、あるいはヘッダーに Content-Type: application/json が含まれているか確認してください。

よくある質問 (FAQ)

Python の requests と httpx はどう使い分けるべきですか?▼

requests は同期通信向けで、スクリプトやデータ分析のデファクトスタンダードです。httpx は FastAPI や asyncio と組み合わせる非同期通信(async/await)や HTTP/2 に最適です。

JSON の真偽値や null は Python でどう変換されますか?▼

true は True、false は False、null は None へ自動的に Python のネイティブ定数に変換されます。

ファイル添付 (-F file=@path) は Python でどう表現されますか?▼

files={'file': open('path', 'rb')} 辞書引数として出力され、multipart/form-data の境界線(boundary)が自動生成されます。

変換時に入力した API キーがサーバーに送信されることはありますか?▼

一切ありません。すべての解析とコード生成はブラウザ内の JavaScript で完結し、サーバー側へのデータ送信は一切行われません。

関連するおすすめ開発ツール

すべてのツール →