分享一个简单的 Python 脚本库:将 requests 代码转换成 curl 命令
分享,一个,简单,Python,脚本,requests,代码,转换成,curl,命令
2025-03-13 21:27:23 时间
工作中经常需要登录 linux 服务器调用接口,一般都是使用 curl 命令,而我本身习惯是本地用 Python 写接口调用的,也就是使用 requests 库写的。于是就经常会有人问我要某个接口的 curl 命令的时候我就需要去重新组装一下,将现有的 requests 脚本改写成 curl 命令行的形式。于是,py2curl 就诞生了,一个简单的 Python 脚本库,可以将 requests 脚本转化成一个简单可用的 curl 命令。
py2curl 介绍
这是一个 python 第三方库,可以直接使用 pip 命令安装使用,代码仓库:https://github.com/Hopetree/py2curl
安装
直接执行 pip 安装命令即可
pip instll py2curl
使用
一个简单的 GET 请求:
import requests
import py2curl
req = requests.get('https://tendcode.com')
result = py2curl.render(req.request)
print(result)
### curl -k -v -X GET -H "Accept: */*" -H "Accept-Encoding: gzip, deflate" -H "Connection: keep-alive" -H "User-Agent: python-requests/2.19.1" https://tendcode.com/
一个常见的 POST 请求:
import requests
import py2curl
url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
headers = {
'Cookie': 'OUTFOX_SEARCH_USER_ID=-2022895048@10.168.8.76;',
'Referer': 'http://fanyi.youdao.com/',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.2; rv:51.0) Gecko/20100101 Firefox/51.0',
}
data = {
'from': 'AUTO',
'to': 'AUTO',
'smartresult': 'dict',
'client': 'fanyideskweb',
'typoResult': 'true'
}
req = requests.post(url, data=data, headers=headers)
result = py2curl.render(req.request)
print(result)
### curl -v -X POST -H "Accept: */*" -H "Accept-Encoding: gzip, deflate" -H "Connection: keep-alive" -H "Content-Length: 70" -H "Content-Type: application/x-www-form-urlencoded" -H "Cookie: OUTFOX_SEARCH_USER_ID=-2022895048@10.168.8.76;" -H "Referer: http://fanyi.youdao.com/" -H "User-Agent: Mozilla/5.0 (Windows NT 6.2; rv:51.0) Gecko/20100101 Firefox/51.0" -d "from=AUTO&to=AUTO&smartresult=dict&typoResult=true&client=fanyideskweb" http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule
总结:使用 py2curl 可以非常方便快速的将本地 python 代码转换成 curl 命令,即使你根本不会 curl 命令也可以做到无缝对接。
顺便分享一个 curl 命令转 python 代码(还可以转其他代码)的网站 https://curl.trillworks.com/
版权声明:如无特殊说明,文章均为本站原创,转载请注明出处 本文链接:https://tendcode.com/article/python-to-curl/ 许可协议:署名-非商业性使用 4.0 国际许可协议
相关文章
- Pycharm的python interpreter选择「建议收藏」
- linux安装python虚拟环境_windows安装python虚拟环境
- Python嵌套函数与匿名函数
- python flask debug_pycharm配置debug
- python类的初始化方法_python初始化列表
- pycharm代码灰色_python import灰色
- Easy Games With Python and Pygame(二)- Pygame 绘制图形
- Python攻防-暴力激活成功教程附近局域网WIFI密码「建议收藏」
- Python应用实践——设计一个学生管理系统
- (更新时间)2021年3月26日 python基础知识(模块制作)[通俗易懂]
- Python基础11-迭代器,生成器
- 恢复pycharm中误删的Python文件
- Python安装第三方库(离线+在线)
- pythoncharm解释器_pycharm自带python
- python lambda表达式详解_lambda python
- USB 摄像头 进行python OpenCV 操作的基础设置【以yolo 目标检测为例】
- python虚拟环境virtualenv_怎样用pycharm写代码
- python数据分析源码_python 统计分析
- Python基础07-函数
- python线性回归算法「建议收藏」