https://github.com/lab-yue/requestify
A script to convert cURL into python requests code in few seconds
https://github.com/lab-yue/requestify
curl python-requests
Last synced: 23 days ago
JSON representation
A script to convert cURL into python requests code in few seconds
- Host: GitHub
- URL: https://github.com/lab-yue/requestify
- Owner: lab-yue
- Created: 2018-03-19T11:54:08.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-05-24T18:23:27.000Z (almost 8 years ago)
- Last Synced: 2026-01-14T11:37:47.654Z (about 2 months ago)
- Topics: curl, python-requests
- Language: Python
- Size: 220 KB
- Stars: 2
- Watchers: 0
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Description:
A scaffold to convert cURL into python requests code in few seconds
Install:
`pip(3) install requestify`
Usage:
There are two ways of input and output:
Input :
+ **from_clipboard** ##(windows not tested)
+ **from_string('...your_string...')**
output:
+ **to_file('...your_file_name...')**
+ **to_current_file()**
Examples:
1.copy cURL from Chrome

2.create a new script
```python
import requestify
requestify.from_clipboard.to_file('new_request.py')
```
This will write to a new file
or
```python
import requestify
requestify.from_clipboard.to_current_file()
```
This will overwrite the current file with new code
If you want to use from_string() , paste your cURL into a new string variable.
Example:
```python
import requestify
base_string = '''
curl 'https://github.com/' -H 'Pragma: no-cache' -H 'Accept-Encoding: gzip, deflate, br' -H 'Accept-Language: zh-CN,zh;q=0.9,ja;q=0.8,en;q=0.7' -H 'Upgrade-Insecure-Requests: 1' -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8' -H 'Cache-Control: no-cache' -H 'Cookie: .............' -H 'Connection: keep-alive' --compressed
'''
requestify.from_string(base_string).to_current_file()
```
3.run it
4.you will get this
```python
import requests
headers = {'Pragma': 'no-cache',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'zh-CN,zh;q=0.9,ja;q=0.8,en;q=0.7',
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
'Cache-Control': 'no-cache',
'Connection': 'keep-alive'
}
cookies = {'_octo': '............',
'_ga': '............',
'user_session': '............',
'__Host-user_session_same_site': '............',
'logged_in': '............',
'dotcom_user': '............',
'tz': '............',
'_gat': '............',
'_gh_sess': '............'
}
response = requests.get('https://github.com/', headers=headers, cookies=cookies)
```
Options:
you can set `with_cookies` or `with_headers` to `False` to disable cookies or headers code generation
```python
requestify.from_clipboard.to_current_file(with_cookies=False,with_headers=False)
```
or
```python
requestify.from_clipboard.to_file('new_request.py', with_cookies=False,with_headers=False)
```
Appendix:
you can also access the url , headers , cookies as python variables without writing them to a file
for instance:
```python
import requestify
data = requestify.from_clipboard
print(data.url)
# https://github.com/
print(data.headers)
# {'Pragma': 'no-cache', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'zh-CN,zh;q=0.9,ja;q=0.8,en;q=0.7', 'Upgrade-Insecure-Requests': '1', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8', 'Cache-Control': 'no-cache', 'Connection': 'keep-alive'}
print(data.cookies)
# {'_octo': '............', '_ga': '............', 'user_session': '............', '__Host-user_session_same_site': '............', 'logged_in': '............', 'dotcom_user': '............', 'tz': '............', '_gat': '............', '_gh_sess': '............'}
```