当前位置: 首页 > 知识库问答 >
问题:

将curl转换为python请求

楮法
2023-03-14

我正在尝试将curl中的以下工作请求转换为python请求(使用请求http://docs.python-requests.org/en/v0.10.7/).

curl --data 'query={"tags":["test1","test2"]}' http://www.test.com/match

(请注意,我使用了一个假url,但该命令确实适用于真实url)

接收端(在烧瓶中运行)执行以下操作:

@app.route("/match", methods=['POST'])
def tagmatch():
    query = json.loads(request.form['query'])
    tags = query.get('tags')
    ... does stuff ...
    return json.dump(stuff)

在curl(7.30)中,在Mac OS X(10.9)上运行,上面的命令正确返回使用标记查询过滤的json列表。

我的python脚本如下所示,它返回400个错误请求。

import requests

payload = {"tags":["test1", "test2"]}
# also tried  payload = 'query={"tags":["test1","test2"]}'
url = 'http://www.test.com/match'

r = requests.post(url, data=payload)

if __name__=='__main__':

     print r.text

我觉得我错过了一些小东西,任何帮助都将不胜感激。

非常感谢。

共有3个答案

帅颖逸
2023-03-14

救命

更简单的办法是:

  1. 开放式邮递员
  2. 单击左上方的“导入”选项卡
  3. 选择“原始文本”选项并粘贴cURL命令
  4. 点击导入,您将在邮递员生成器中拥有该命令

希望这能有所帮助!

信贷:安卡尔·辛格

须敏学
2023-03-14

您的服务器正在等待JSON,但您没有发送它。试试这个:

import requests
import json

payload = {'query': json.dumps({"tags":["test1", "test2"]})}
url = 'http://www.test.com/match'

r = requests.post(url, data=payload)

if __name__=='__main__':
    print r.text
桑璞
2023-03-14

有一个很棒的开源cURL-to-Python请求转换助手http://curl.trillworks.com.它并不完美,但在很多时候都有帮助。特别是用于转换Chrome“复制为卷曲”命令。如果您需要以编程方式进行转换,那么还有一个节点库

 类似资料:
  • 我在开发工具的帮助下将请求复制为CURL,并收到: 已将请求复制到控制台(curl工作正常)。收到的结果 在的帮助下将curl转换为python请求https://curl.trillworks.com/收到: 已尝试此代码,但收到错误 body是无效的拉丁语-1。使用body.encode('utf-8'),如果你想发送它编码在UTF-8。 补充。编码('utf-8')) 但收到无效结果: b'

  • 问题内容: 我有以下CURL请求,谁能请我确认subesquest HTTP请求是什么? 会是这样吗? 任何人都可以帮助我将上述curl请求完全转换为httpreq。 提前致谢。 苏维 问题答案: 有很多方法可以实现这一目标。在我看来,以下一项是最简单的,同意它不是很灵活,但是可以工作。

  • 我通过邮递员以以下方式调用我的java webservice(POST请求),这种方式工作得非常好(即,我可以看到我的记录被插入到数据库中): 下面是选项卡中的内容: 我必须使用CURL在PHP中调用相同的请求,而不是通过POSTMAN调用它。我想知道是否有办法将此命令导出到命令,以便在PHP代码中使用它?我在网上的许多地方发现了相反的方法,有人要求将基于Curl的请求转换为POSTMAN,但却不

  • 我在将curl请求转换为python代码请求时遇到了麻烦。 工作卷曲请求 卷曲-X柱“http://xxxxxx“-H”accept:application/json“-H”内容类型:application/x-www-form-urlencoded“-H”授权:令牌882a6ec053ff6dbac623eff400f67c0bb6ade399“-d”name=namename” 不工作pyth

  • 问题内容: 我从来没有做过卷曲,所以需要一些帮助。我已经尝试通过示例来解决这个问题,但是我无法理解! 我有一个curl命令,可以从linux(ubuntu)命令行成功运行,该命令行通过api将文件放入Wiki。 我需要将此curl命令合并到我正在构建的PHP脚本中。 如何转换curl命令,使其在PHP脚本中起作用? cookie.txt包含身份验证,但是我不会在脚本中将其以明文形式出现,因为这将仅

  • 在SWIFT中,我无法将以下curl转换为url请求。 我尝试了以下方法,但在解压缩一个可选值错误时意外地发现为nil 我尝试了这个链接中的解决方案,在Swift中将curl转换为URL请求