xml.parsers.expat. ExpatError при парсинге XML

my_function.__name__

Используя __name__ предпочтительный метод, поскольку он применяется однородно. В отличие от этого func_name, это работает над встроенными функциями также:

>>> import time
>>> time.time.func_name
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
AttributeError: 'builtin_function_or_method' object has no attribute 'func_name'
>>> time.time.__name__ 
'time'

Также двойные подчеркивания указывают читателю, это - специальный атрибут. В качестве награды классы и модули имеют __name__ атрибут также, таким образом, Вы только имеете, помнят одно специальное имя.

6
задан Gilles 'SO- stop being evil' 1 September 2011 в 14:36
поделиться

2 ответа

Основная проблема заключается в том, что код XML, возвращаемый этой службой не включает корневой узел, что недопустимо. Я исправил это, просто заключив вывод в узел .

import urllib
from xml.etree import ElementTree

url = 'http://69.36.9.147:8090/clientes/SMS_API_OUT.jsp?codigo=ABCDEFGH&cliente=XX'
xmldata = '<root>' + urllib.urlopen(url).read() + '</root>'
tree = ElementTree.fromstring(xmldata)
codigo = tree.find('codigo').text

print codigo

Вы можете использовать любой анализатор, какой захотите, но здесь я использовал ElementTree для получения значения.

13
ответ дан 8 December 2019 в 13:48
поделиться

XML-документ состоит из одного элемента документа верхнего уровня, а затем нескольких подэлементов. Ваш XML-фрагмент содержит несколько элементов верхнего уровня, что не разрешено стандартом XML.

Попробуйте вернуть что-нибудь вроде:

<result><codigo>3</codigo><valor></valor><operador>Dummy</operador></result>

Я заключил весь ответ в тег .

4
ответ дан 8 December 2019 в 13:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: