【问题标题】:Getting backslash in REST POST request payload when reading data from Excel file从 Excel 文件读取数据时,在 REST POST 请求有效负载中获取反斜杠
【发布时间】:2020-05-23 18:32:44
【问题描述】:

我正在尝试使用 Python requests 模块执行 POST 方法。为此,我正在从 Excel 文件中读取数据,但是在将数据添加到字典时,在提交请求时我会在请求负载中得到反斜杠。

我在 Excel 文件中的数据

KEY - metadata
VALUE - {"key1" : "value1" , "key2" : "value2"}

在列表中加载数据,如

<class 'list'>
['metadata' : '{"key1" : "value1" , "key2" : "value2"}']

现在在 request_payload 中读取和获取相同的内容,例如

    request_payload = "metadata" : [ 
                          getData["metadata"] 
                        ]

但是提交给服务器的请求是这样的

"metadata": ["{\"key1\":\"value1\",\"key2\":\"value2\"}"]}

简单地说,我的理解是,当向服务器提交请求时,反斜杠 (\) 会添加到双引号 (\")。

【问题讨论】:

  • 预期输出类似于 -- "metadata": [ { "key1": "value1", "key2": "value2" } ]
  • 什么是getData
  • 你可能想试试jsonpickle.github.io - jsonpickle 编码和解码
  • getData 我创建的 iis pytest 夹具方法

标签: python python-requests http-post openpyxl


【解决方案1】:

是的,这是使用 python 模块 ast 处理的购买。

import ast
json = ast.literal_eval("json_input")

【讨论】:

    猜你喜欢
    • 2013-01-09
    • 2013-09-23
    • 1970-01-01
    • 2014-09-23
    • 1970-01-01
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    相关资源
    最近更新 更多