今天再测试api时,发现一个问题。
api返回的是一个php的config配置数据,在php中,我们使用是的,parse_ini_string 函数来很好的将配置,处理成一个多维数组。
这里使用python 来解决的话,目前,只发现了configparser ,但在使用的过程中,一直报错。
看了源码和网上的贴子,说的各种都有,有说编码的,有说要从文本中打开的。
可能说从文本打开的是使用较旧的版本的。
我使用的是5.2版本configparser
经过良久,测试,发现了。
如下BUG:
内容或者字符串的开头,比需一个完整的 "[ ]" 类列表字符串,列表中内容可以为空。如果开头没有这个,就会报错。
目前小记一下,后续看能不能有更好的方法。
api 是对方程序写死的。目前只支持php 和 java
response = requests.post(url, data=data)
result = response.content.decode('gbk')
result = '[lfinfo]\n' + result
print(result)
# result = response.content
cf = configparser.ConfigParser(allow_no_value=True)
#
# cf.read('1.txt', encoding='gbk')
cf.read_string(result)
sections = cf.sections()
for s in sections:
i = cf.items(s)
for a in i:
print(a)