2016-06-13 5 views
-1

Я пытаюсь выполнить python2.7 с помощью xmltodict ext. получить данные из API-интерфейсов приложений (тип XML). не получил представление о том, как это делать ... Я пытался сделать это с локальным XML (я загрузить его из исходного URL) с успехом мой местный код выглядит следующим образом:получить данные из URL XML с помощью python и xmltodict

import xmltodict 

document = open("my local path\API_GETDATA.xml", "r") 

read_doc = document.read() 

xml_doc = xmltodict.parse(read_doc) 

for i in xml_doc: 

    print (xml_doc[i]) 

    i=i+1 

и мой результат печати все поля XML.

Как я могу заставить его работать с URL? Есть ли еще что-то, что я пропустил?

+0

Что не работает? –

ответ

0

Используйте библиотеку питона requests:

Установка с pip install requests и использовать так:

import requests 

r = requests.get("url") 

xmltodict.parse(r.content) 
+0

я получаю сообщ ошибка: Traceback (самый последний вызов последнего): Файл "C: \ Users \ tzahi.k \ Desktop \ xmltodict-0.10.2 \ tttt.py", строка 18, в xmltodict.parse (r.content) Файл "C: \ Users \ tzahi.k \ Desktop \ xmltodict-0.10.2 \ xmltodict.py", строка 311, в синтаксическое parser.Parse (xml_input, True) ExpatError: синтаксическая ошибка: строка 1, столбец 0 –

+0

Кажется, что XML не является надлежащим XML или другой проблемой синтаксического анализа XML. Чтобы отладить это, напишите следующее перед линией разбора: 'open (" out.txt "," wb "). Write (r.content)' и загрузите файл out.txt на pastebin.com и разместите его здесь. Я посмотрю на это. –

Смежные вопросы