- convert-to-requests
- curl
- Installing
- Using pip
- From git
- Dependencies
- Debian/Ubuntu
- Convert curl to python
- curl from Safari
- curl from Firefox
- Privacy
- Similar Tools
- Support Us
- Convert curl to python
- curl from Safari
- curl from Firefox
- Privacy
- Similar Tools
- Support Us
- Convert curl to python
- curl from Safari
- curl from Firefox
- Privacy
- Similar Tools
- Support Us
- How to convert CURL to python requests and vice versa
- Converting curl to Python requests
- Converting Python requests to curl
convert-to-requests
Parse curl command (from «copy to cURL») or (w/ —fetch ) fetch code (from «copy to fetch») from stdin and either execute the request using requests.request() ( exec subcommand) or print Python code to do so ( code subcommand).
curl
$ convert-to-requests code --pretty requests.request Execute the request:
$ convert-to-requests -v head -2 GET https://obfusk.ch html> POST works too:
$ convert-to-requests code requests.request convert-to-requests --fetch code , ignoring ignoring
);'''Unfortunately, "copy as fetch" doesn't include cookies ("copy as Node.js fetch" does).
Chromium doesn’t include a User-Agent header in either.
Installing
Using pip
$ pip install convert-to-requests
NB: depending on your system you may need to use e.g. pip3 —user instead of just pip .
From git
NB: this installs the latest development version, not the latest release.
$ git clone https://github.com/obfusk/convert-to-requests.git $ convert-to-requests $ pip install -e .
NB: you may need to add e.g. ~/.local/bin to your $PATH in order to run convert-to-requests .
To update to the latest development version:
$ convert-to-requests $ git pull --rebase
Dependencies
Debian/Ubuntu
$ apt install python3-requests
Convert curl to python
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
curl from Safari
- Open the Network tab in the Developer Tools
- Right click (or Ctrl-click or two-finger click) a request
- Click «Copy as cURL» in the dropdown menu
- Paste it in the curl command box above
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
curl from Firefox
- Open the Network Monitor tab in the Developer Tools
- Right click (or Ctrl-click) a request
- Click «Copy» → «Copy as cURL»
- Paste it in the curl command box above
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
Privacy
We do not transmit or record the curl commands you enter or what they’re converted to. This is a static website (hosted on GitHub Pages) and the conversion happens entirely in your browser using JavaScript.
There is also a VS Code extension and a command line tool you can install from npm with
npm install -g curlconverter
Similar Tools
- Postman, Insomnia and Paw
- curl-to-Go, -to-PHP, -to-ruby
- http-translator (to Python and JS)
- curl’s —libcurl (to C)
- uncurl (to Python)
- hrbrmstr/curlconverter (to R)
- curl-to-elisp
- HAR-to-curl
- curlify (Python to curl)
- Bash2Py
Support Us
GitHub is matching all contributions to this project on GitHub Sponsors.
Convert curl to python
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
curl from Safari
- Open the Network tab in the Developer Tools
- Right click (or Ctrl-click or two-finger click) a request
- Click «Copy as cURL» in the dropdown menu
- Paste it in the curl command box above
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
curl from Firefox
- Open the Network Monitor tab in the Developer Tools
- Right click (or Ctrl-click) a request
- Click «Copy» → «Copy as cURL»
- Paste it in the curl command box above
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
Privacy
We do not transmit or record the curl commands you enter or what they’re converted to. This is a static website (hosted on GitHub Pages) and the conversion happens entirely in your browser using JavaScript.
There is also a VS Code extension and a command line tool you can install from npm with
npm install -g curlconverter
Similar Tools
- Postman, Insomnia and Paw
- curl-to-Go, -to-PHP, -to-ruby
- http-translator (to Python and JS)
- curl’s —libcurl (to C)
- uncurl (to Python)
- hrbrmstr/curlconverter (to R)
- curl-to-elisp
- HAR-to-curl
- curlify (Python to curl)
- Bash2Py
Support Us
GitHub is matching all contributions to this project on GitHub Sponsors.
Convert curl to python
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
curl from Safari
- Open the Network tab in the Developer Tools
- Right click (or Ctrl-click or two-finger click) a request
- Click «Copy as cURL» in the dropdown menu
- Paste it in the curl command box above
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
curl from Firefox
- Open the Network Monitor tab in the Developer Tools
- Right click (or Ctrl-click) a request
- Click «Copy» → «Copy as cURL»
- Paste it in the curl command box above
Warning: the copied command may contain cookies or other sensitive data. Be careful if you’re sharing the command with other people, sending someone your cookie for a website is like sending them your password.
Privacy
We do not transmit or record the curl commands you enter or what they’re converted to. This is a static website (hosted on GitHub Pages) and the conversion happens entirely in your browser using JavaScript.
There is also a VS Code extension and a command line tool you can install from npm with
npm install -g curlconverter
Similar Tools
- Postman, Insomnia and Paw
- curl-to-Go, -to-PHP, -to-ruby
- http-translator (to Python and JS)
- curl’s —libcurl (to C)
- uncurl (to Python)
- hrbrmstr/curlconverter (to R)
- curl-to-elisp
- HAR-to-curl
- curlify (Python to curl)
- Bash2Py
Support Us
GitHub is matching all contributions to this project on GitHub Sponsors.
How to convert CURL to python requests and vice versa
curl and Python requests are both powerful tools for sending HTTP requests. While curl is a command-line tool that allows you to send requests directly from your terminal, Python’s requests library provides a more programmatic way to send requests from within Python code. In this article, we’ll explore how to convert between curl and Python requests, so you can use the tool that makes the most sense for your workflow.
Converting curl to Python requests
The basic syntax of a curl command looks like this:
When converting a curl command to Python requests, we need to translate the options and URL into Python code.
Here’s an example curl command:
curl -X POST https://example.com/api/v1/users \
-H ‘Content-Type: application/json’ \
-H ‘Authorization: Bearer YOUR_API_KEY’ \
-d ‘{«username»: «john_doe», «email»: «john_doe@example.com»}’
To convert this curl command to Python requests, we can write the following code:
import requests
url = ‘https://example.com/api/v1/users’
headers = {
‘Content-Type’: ‘application/json’,
‘Authorization’: ‘Bearer YOUR_API_KEY’
}
data = {
‘username’: ‘john_doe’,
’email’: ‘john_doe@example.com’
}
response = requests.post(url, headers=headers, json=data)
print(response.status_code)
print(response.json())
In this example, we use the requests.post() method to send a POST request to the URL https://example.com/api/v1/users with the JSON payload {«username»: «john_doe», «email»: «john_doe@example.com»} . We also include the Content-Type and Authorization headers.
Converting Python requests to curl
Converting Python requests code to a curl command is a bit trickier, as there’s no direct equivalent for the requests library on the command line. However, we can use the –data or -d option to pass data to the curl command, and the -H option to set headers.
Here’s an example Python GET requests script:
import requests
url = ‘https://example.com/api/v1/users’
headers = {
‘Content-Type’: ‘application/json’,
‘Authorization’: ‘Bearer YOUR_API_KEY’
}
params = {
‘username’: ‘john_doe’,
‘sort’: ‘name’,
‘order’: ‘asc’
}
response = requests.get(url, headers=headers, params=params)
print(response.status_code)
print(response.json())
To convert this Python requests code to a curl command, we can use the following command:
curl -X GET ‘https://example.com/api/v1/users?username=john_doe&sort=name&order=asc’ \
-H ‘Content-Type: application/json’ \
-H ‘Authorization: Bearer YOUR_API_KEY’
In this example, we use the -X GET option to specify that we’re sending a GET request, and we pass the URL and query parameters as a string. We also include the Content-Type and Authorization headers.
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source robot learner !