Python - TypeError запрашивает Solarwinds N-Central через Zeep SOAP
Я впервые использую zeep в Python3, чтобы получить доступ к XML-данным из N-central Solarwind и попытаться получить информацию о клиенте, но я застрял в параметре настроек, я получаю TypeError, получил неожиданный аргумент ключевого слова 'Key' Я пробовал все, но он дает мне ту же ошибку, даже пытался с помощью метода get_type (), но все равно получаю ту же ошибку
from zeep import Client
from zeep import xsd
def customer_info(request):
client = Client('http://server-name/dms/services/ServerEI?wsdl')
# settings_type=client.get_type('ns0:Customer')
# value = settings_type(Key='listSOs', Value='true')
value={
'Key': 'listSOs',
'Value': "true",
}
response =client.service.Customer_List(Username=USER,Password=PASS,Settings=value)
response2 =client.service.Device_List(Username=USER,Password=PASS,Settings=xsd.SkipValue)
return HttpResponse(response)
Об этом написано в ее Документах
Параметры:
username - имя пользователя MSP N-central.
пароль - соответствующий пароль MSP N-central.
settings - список нестандартных настроек, хранящихся в списке объектов EiKeyValue. Ниже приведен список допустимых ключей и значений. Если не используется, оставьте значение null.
(Ключ) listSOs - (Значение) «истина» или «ложь». Если true, будут отображаться только SO с, если false будут показаны только клиенты и сайты. Значение по умолчанию - false.
1 ответ
Формат был неправильным, следующий код работал у меня
from zeep import Client
from zeep import xsd
def customer_info(request):
client = Client('http://server-name/dms/services/ServerEI?wsdl')
value = [
{
'Key': 'listSOs',
'Value': 'false'
}
]
response =client.service.Customer_List(Username=USER,Password=PASS,Settings=value)
return HttpResponse(response)