Skip to content
Shrake DevTools
  • JSON FormatterData & Format
  • JSON ValidatorData & Format
  • JSON MinifierData & Format
  • JSON ↔ YAML ConverterData & Format
  • XML FormatterData & Format
  • Base64 Encoder / DecoderData & Format
  • URL Encoder / DecoderData & Format
  • JWT InspectorData & Format
↑ ↓ to navigate↵ to openEsc to close

cURL → Python

Runs locally in your browser. Your input is not uploaded.Free, no sign-up

cURL command

Python

Convert cURL commands to Python requests code.

How to use the cURL to Python converter

  1. Paste a curl command, or click Sample.
  2. Copy the code; it uses the requests library (pip install requests).

What's translated

  • JSON bodies become a Python dict sent with json= (with True, False and None), so requests sets the Content-Type for you.
  • -F uploads become files= and data=, -u becomes auth=, and --max-time becomes timeout=.
  • -k becomes verify=False, with a warning: it turns off certificate checks.

Frequently asked questions

Does it work with httpx?

Mostly: httpx's API mirrors requests, so httpx.post(url, headers=…, json=…) works after changing the import. Uploads and some options differ slightly.

Which cURL options are understood?

The ones that shape a request: -X, -H, -d and its variants (--data-raw, --data-binary, --data-urlencode, --json), -F, -u, -b, -A, -e, -G, -I, -L, -k and --max-time. Output options like -s or -o are ignored, and anything else is listed under the result.

Can I paste "Copy as cURL" from the browser?

Yes, in bash or Windows format: $'…' quoting and \, ^ or ` line continuations are handled. Remove session cookies and tokens you don't want in your code.

Is my command uploaded or run?

No. It's parsed and converted in your browser; nothing is sent.