2016-12-23 2 views
0

У меня есть ключ API, который я могу использовать через Chrome (расширение XML RPC Client с вводом массива JSON) или с расширением Firefox (расширение RESTClient с вводом данных XML). Я хочу сделать это в Python.Передача параметров с использованием клиента XML-RPC в Python

Я могу перечислить методы, но я понятия не имею, как передавать сложные вещи.

Вот код, который возвращает методы:

import xmlrpc.client 

with xmlrpc.client.ServerProxy("http://a4a.test.clickonometrics.pl/api/xmlrpc.php") as proxy: 
    response=proxy.system.listMethods() 
    print(response) 

Я хочу использовать метод "publisher.getStats" и передать JSON массив:

[ "bOpd4YbxbQXZxa7n1Aj4PbsRbviz1Jlk", { "перспектива": «кампании», «date_start»: «2016-08-01», «date_end»: «2016-12-31», «идентификаторы»: [«534»], «группа»: «места размещения»}]

Работает 1: 1, как я описал в Chrome XML-RPC Clien t.

Как это сделать в Python?

ответ

0

Мне, наконец, удалось это сделать.

Имя метода должно передаваться как proxy.methodname, а также параметры в обычных скобках, только без []. Очень просто, но мне потребовалось некоторое время.

Рабочий код:

import xmlrpc.client 

with xmlrpc.client.ServerProxy("http://a4a.test.clickonometrics.pl/api/xmlrpc.php") as proxy: 
    response=proxy.publisher.getStats("bOpd4YbxbQXZxa7n1Aj4PbsRbviz1Jlk",{"perspective":"campaigns","date_start":"2016-08-01","date_end":"2016-12-31","ids":["534"],"group":"placements"}) 
    print(response)