Python执行Curl命令

这篇具有很好参考价值的文章主要介绍了Python执行Curl命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近想用Python爬取IBM X-Force的漏洞数据,在发现该网站提供免费的API后,便开始尝试使用该API直接获取数据。
但是在使用API的时候遇到了一个小问题,它提供的使用案例是以Curl命令的格式给出的:

curl -X 'POST' \
  'https://api.xforce.ibmcloud.com/api/vulnerabilities' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: XXXXXXXXXX' \
  -d '["CVE-2014-2601","CVE-2017-0001"]'

如果直接使用Python的pycurl库来执行Curl命令的话过于麻烦且啰嗦,因此我尝试用Requests库来代替。
这又引出了一个问题,Curl命令的参数和Requests库的参数格式并不一致。我一度放弃了这个方案,直到我看到了StackOverflow上的这个回答:execute-curl-command-within-a-python-script。
该回答推荐了一个工具:curlconverter,可以将Curl命令直接转换为等效的 Python代码,例如,上述Curl命令会被转换为:

import requests

headers = {
    'accept': 'application/json',
    # Already added when you pass json=
    # 'Content-Type': 'application/json',
    'Authorization': 'XXXXXXXXXX',
}

json_data = [
    'CVE-2014-2601',
    'CVE-2017-0001',
]

response = requests.post('https://api.xforce.ibmcloud.com/api/vulnerabilities', headers=headers, json=json_data)

这完美的解决了我的问题。
该工具同时还可以将Curl命令转换为Java、C、R等语言的代码,源码托管在GitHub中。文章来源地址https://www.toymoban.com/news/detail-645540.html

到了这里,关于Python执行Curl命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 浏览器提取url至Curl,Curl请求与Python request之间的转化

    curl 是一个非常实用的、用来与服务器之间传输数据的工具。 curl支持的协议很多,包括 DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP。curl设计为无用户交互下完成工作。 curl提供了一大堆非常有用的功能,包括代理访问

    2024年02月02日
    浏览(47)
  • Curl转Python代码 (无需依赖Postman)

    需要对浏览器某些请求二次开发,完成批量操作等自动开发 F12-网络 选中请求,右键复制为curl(bash),然后替换到下面代码curl变量,然后运行生成python代码 手动编写的curl未测试是否兼容,主要是格式要保持一致,代码是按照浏览器生成的curl格式解析的

    2024年02月12日
    浏览(36)
  • 使用curl执行Http请求

    curl(CommandLine Uniform Resource Locator或CommandLine URL),curl命令是在命令行方式下工作,利用URL的语法进行数据的传输或者文件的传输。是一个利用URL语法在命令行下工作的文件传输工具。curl设计为:在无用户交互下完成工作。 curl支持的协议包括:DICT、FILE、FTP、FTPS、GOPHER、H

    2024年02月15日
    浏览(50)
  • linux curl命令使用教程(curl指令)

    curl是一个用于发送HTTP请求的命令行工具,它支持多种协议,包括HTTP、HTTPS、FTP、SMTP等。curl可以用来下载文件、上传文件、发送POST请求、发送表单数据等。 curl的基本用法如下: 其中,URL是要请求的网址或者文件的URL。 常用的选项包括: -o, --output file :将下载的文件保存到

    2024年02月09日
    浏览(46)
  • 12 | 使用 Spark SQL执行CURL

    Spark SQL 是 Apache Spark 生态系统中的一个组件,它提供了用于结构化数据处理和分析的高级接口。Spark SQL 可以让用户使用 SQL 语言来查询和操作数据,同时也提供了强大的分布式计算能力。下面是关于 Spark SQL、SparkSession 和 DataFrame 的关键点: 1. Spark SQL: 定义 :Spark SQL 是一个

    2024年02月10日
    浏览(44)
  • 如何安装 Python在的第三方库:curl_cffi

    要安装Python的第三方库 curl_cffi ,您可以使用以下步骤: 打开终端(Linux/macOS)或命令提示符(Windows)。 运行以下命令来使用pip安装 curl_cffi : 如果您正在使用Python 3,则可能需要使用 pip3 而不是 pip : 等待安装完成。一旦安装成功,您就可以在您的Python代码中导入并使用

    2024年02月06日
    浏览(41)
  • 全网最详细中英文ChatGPT-GPT-4示例文档-食谱智能生成从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)

    目录 Introduce 简介 setting 设置 Prompt 提示 Sample response 回复样本 API request 接口请求 python接口请求示例 node.js接口请求示例 curl命令示例 json格式示例 其它资料下载 ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流,

    2023年04月10日
    浏览(39)
  • CURL命令常用用法

    本文参考文章如下,本文书写内容有限,想了解更多的可以看下面列举的参考文章: https://www.coonote.com/linux/linux-cmd-curl.html https://www.ruanyifeng.com/blog/2011/09/curl.html https://www.ruanyifeng.com/blog/2019/09/curl-reference.html 这里只列举几个我认为比较常用的选项,想要了解更多,可以查看h

    2024年02月05日
    浏览(73)
  • linux 命令 curl 详解

    curl 是一个命令行访问URL的计算机逻辑语言的工具,发出网络请求,然后得到数据并提取出,显示在标准输出 stdout 上面; 可以用它来构造http request报文, curl(CommandLine Uniform Resource Locator) ,即在命令行中利用URL进行数据或者文件传输; 支持的协议包括 ( DICT, FILE, FTP, FTPS, GOPHER

    2024年02月04日
    浏览(45)
  • cURL命令详解

    cURL 是用于数据传输的命令行工具,支持多种传输协议,包括HTTP、HTTPS、SCP、FTP、SFTP、TELNET、FILE、SMTP、POP3等等。可以使用 cURL 进行 HTTP/HTTPS 请求、上传/下载文件等,且支持 Cookie 、用户身份验证、代理支持、限速等。 有时候 server 会阻止 curl 的下载请求,这时可以透过修改

    2024年02月12日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包