A scaffold to convert cURL into python requests code in few seconds
pip(3) install requestify
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()
import requestify
requestify.from_clipboard.to_file('new_request.py')
This will write to a new file
or
import requestify
requestify.from_clipboard.to_current_file()
This will overwrite the current file with new code
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()
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)
you can set with_cookies
or with_headers
to False
to disable cookies or headers code generation
requestify.from_clipboard.to_current_file(with_cookies=False,with_headers=False)
or
requestify.from_clipboard.to_file('new_request.py', with_cookies=False,with_headers=False)
you can also access the url , headers , cookies as python variables without writing them to a file
for instance:
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': '............'}