我正在尝试连接到SOAP Web服务,并使用 Pandas 放在 table 上。

Zeep给我这个 list :

[{
    'ssPeca': '103',
    'ssQtd': '1',
    'ssUn': 'un'
}, {
    'ssPeca': '291A',
    'ssQtd': '8',
    'ssUn': 'un'
}, {
    'ssPeca': '406B',
    'ssQtd': '8',
    'ssUn': 'un'
}]

我的代码是这样的:
client = zeep.Client(wsdl=wsdl)
pecas=client.service.TabelaPecas("C-160","CR")

pd.DataFrame.from_dict(pecas)

该代码生成以下代码:
      0     1    2
0  ssPeca ssQtd ssUn
1  ssPeca ssQtd ssUn
2  ssPeca ssQtd ssUn

但我想要这个:
      0     1    2
0    103    1   un
1    291A   8   un
2    406B   8   un

有人可以帮忙吗?我只是python的初学者。

最佳答案

Zeep具有将响应转换为python对象的功能。例如:命令字典。

您应该使用:

from zeep.helpers import serialize_object

client = zeep.Client(wsdl=wsdl)
pecas=client.service.TabelaPecas("C-160","CR")

pecas = serialize_object(pecas)

pd.DataFrame(pecas)

资料来源:http://docs.python-zeep.org/en/latest/helpers.ht

编辑:固定错字,谢谢voglster

关于Python,Zeep对 Pandas 的回应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48528268/

10-12 22:52