我试图从一个包含如下内容的文件中读取数据
{"name": "Host1","type": "ipmask","subnet": ["0.0.0.0","255.255.255.255"],"dynamic_mapping": None},
{"name": "Host2","type": "ipmask","subnet": ["0.0.0.0","255.255.255.255"],"dynamic_mapping": None},
转换为python中的一个变量,以便我可以在下面的代码中使用它来处理使用JSON的post请求
with open('data.txt', 'r') as file:
dat2 = file.read()
post2 = {
"id": 5,
"method": "set",
"params": [
{
"data": [
dat2
],
"url": "/config/url"
},
"session": sessionkey,
"verbose": 1
}
我被卡住了,因为当我将数据复制并通过dat2所在的JSON时,请求成功通过。我真的不明白我做错了什么,我甚至试着去掉新行和空白。如果有人能帮忙,我将不胜感激
这个堆栈溢出问题有很多很好的答案:How to read a file line-by-line into a list?。 你可能会找到一个有效的
我想您想发送data.txt中每一行的请求吗?在这种情况下,简单循环将有助于读取该行,去掉“,”并发送请求:
我可以看到一些事情可能会给你带来一些问题,所以我会先提到它们,然后建议一些调整
两件主要的事情是,首先,严格的JSON解析器会对数据文件中的
None
产生问题——我想知道是否存在JSON与Python数据结构的字符串输出的混合。另一个是您显示的post2
结构缺少'params'元素的右方括号,因此它显然没有按原样运行我建议您设置一次“post2”结构,然后只更新每行的“data”数组内容,例如
然后使用
相关问题 更多 >
编程相关推荐