Я взаимодействую со службой SOAP через Zeep, и пока все идет хорошо, за исключением того, что я столкнулся с проблемой, связанной с передачей значений во всем, что связано с расширением XSD.
Я пробовал несколькои я в полном уме.
campaignClient = Client("https://platform.mediamind.com/Eyeblaster.MediaMind.API/V2/CampaignService.svc?wsdl")
listPaging = {"PageIndex":0,"PageSize":5}
fact=campaignClient.type_factory("ns1")
parentType = fact.CampaignIDFilter
subtype=dict(parentType.elements)["CampaignID"] = (123456,)
combined= parentType(CampaignID=subtype)
rawData = campaignClient.service.GetCampaigns(Paging=listPaging,CampaignsFilter=combined, ShowCampaignExtendedInfo=False,_soapheaders=token)
print(rawData)
Контекст следующий: этот сервис предназначен для получения списка элементов, и к нему можно применить фильтр, который является универсальным типом.,Затем вы можете реализовать любой тип фильтра, соответствующий этому типу, здесь CampaignIDFilter.Мои другие попытки не увенчались успехом, и служба использовала для определения неправильного типа или чего-то подобного, но этот способ - который, я думаю, на бумаге звучит, заставляет меня «что-то пошло не так».
Я буквально реализую решение, найденное здесь: Создание XML-последовательностей с помощью zeep / python
Вот служба Doc http://platform.mediamind.com/Eyeblaster.MediaMind.API.Doc/?v=3
Cheers