Ктонибудь работал с ихним апи на питоне? Описание функций тут, конечно описание ох*ное, либо это формат такой описания функц. который ни где не найдешь, либо это хз что. http://www.seolib.ru/script/xmlrpc/ Пример Каким боком тут массив непонятно.... Вот есть код: Code: cl = xmlrpclib.ServerProxy('http://www.seolib.ru/script/xmlrpc/server.php') Шлем через клиент пустой массив идет исключение. Code: <Fault 3: 'Incorrect parameters passed to method: Wanted string, got array at param 1'> Так значит хочет строку, в каком формате? Как я не пытался но ответ один и тоже: Code: {'isIndexed': 'a:1:{s:5:"error";s:17:"Not enought money";}'} Отлично, вместо того чтоб сказать о неправильном пароле и.т.д Просто выдает что нет денег... И как я только не слал данные всеравно ошибки... Саппорт по техн. вопросам хз. за что ему платят: В общем помогите, кто работал с ними на python, подкиньте пример, .
Я читал вчера, даже сниферром смотрел что передаеться: Code: <Fault 3: 'Incorrect parameters passed to method: Wanted string, got array at param 1'>
А <methodCall><methodName> указываешь? Покажи проснифаные данные, так не скажешь что не так, похоже вместо имени метода передаешь аrray, хотя хз.
Code: <?xml version='1.0'?> <methodCall> <methodName>extlinks.checkYandexIndexedPage</methodName> <params> <param> <value><array><data> <value><string>mironich</string></value> <value><string>ef85</string></value> <value><string>vk.com</string></value> </data></array></value> </param> </params> </methodCall>
seosimf, спасибо 2 мин. назад сам к этому пришел.... Но я пробовал вчера серилизовать питоном список не прокатило, буду разбираться. Помогла эта стр.: http://www.seolib.ru/script/webinterface/#ParamsStringYandexRegions Хз, как серилизовать аналогично php список в питоне, но бл. как так криво можно реализовывать API!!!!!! Зачем вообще сериализация если протокол держит передачу структур\обьектов. В общем если через pickle серилизовывать то получаеться другой вид и ессно он его не ест...
Ну тут ручками, там довольно простая сериализация, насчет зачем они так делают и тем более пишут что используют стандартный XML-RPC вводя в заблуждения - This Is Russia умом ее не понять.
А есть где-нибудь описание реализации сериализации в php? А то я на github поискомищу по сорцам еще долго буду искать. Реализацию вкурил. Всем спасибо позже функцию кину. Вот функц. серилизует список, держит только str\int типы, остальное мне не надо было. Code: from StringIO import StringIO def serialize(array): tmp_data = StringIO() tmp_data.write('a:%i:{' % len(array)) sch = 0 for item in array: tmp_data.write('i:%i;' % sch) if isinstance(item, str): tmp_data.write('s:%i:"%s";' % (len(item), item)) elif isinstance(item, int): tmp_data.write('i:%i;' % item) sch += 1 tmp_data.write('}') res_str = tmp_data.getvalue() tmp_data.close() return res_str Тему можно закрывать, всем спасибо кто поучаствовал в обсуждении. Есть оказываеться готовая либа phpserialize.