2010-02-07 2 views
1

Я новичок в xml. Я пытаюсь разобрать файл XML для извлечения данных из, но он показывает ошибку ниже сообщение, когда я называю doc=minidom.parse('D:\\CONFIGRATION.xml') ...python xml error

xml.parsers.expat.ExpatError:not well-formed (invalid token): line 474, column 15 

473 <Extras> 
474 <extra Type> 
475  jpg 
476 </extra Type> 
477 <extra Type> 
478  psd 
479 </extra Type> 
480 </Extras> 

Может кто-нибудь, пожалуйста, помогите мне? Что такое хорошо сформированный документ XML?

Заранее спасибо

+1

Почему бы не вставить содержимое CONFIGATION.xml? –

+0

Да, человек показывает нам немного xml человека! –

+1

Я не уверен, что хочу увидеть здесь 474 строки XML. – JasonSmith

ответ

2

Вы спрашиваете, что означает «хорошо сформированный». Это означает, что XML соответствует стандарту. Не будучи «правильно сформированным» означает, что вы использовали незаконный синтаксис. В вашем конкретном случае у вас есть тег, который выглядит так:

<@extra Type> 

У вас не может быть места в названии тега. У вас есть и другие проблемы: вы не можете запустить тег с помощью @, и ваши закрывающие теги также неверны. Слэш должен немедленно следовать за <

Официальная спецификация для хорошо сформированного XML находится на W3C website. ваш xml против спецификации. Если вам нужна более подробная информация о вашем документе, вы можете использовать одну из многих служб проверки xml. Используйте свою любимую поисковую систему для поиска «проверки XML».

+0

+1 это именно то, что я искал –

+0

еще одна вещь (что @ должно было показывать теги на этой странице), я не поставил @ в свой код –

0

Проверьте, чтобы увидеть, если документ имеет какие-либо ошибки на линии 474, столбец 15. Существует, вероятно, ключ или вблизи этой точки.

Кроме того, вы ошибались КОНФИГУРАЦИЯ? Вам не хватает «U».

+0

Он, вероятно, не пропустил его (в смысле не указывая действительный файл), так как он правильно прочитал файл. –

+0

Что значит (хорошо сформированный документ) в любом случае? значит ли это . что у меня нет закрытых тегов ??? Я проверил его. и это было прекрасно, я думаю. –

+0

@John, да, я просто хотел напомнить, что его файл конфигурации ошибочен, кроме этой ошибки. – JasonSmith

2

«Хорошо сформированный XML» означает, что документ соответствует the W3C standards. Сообщение об ошибке означает, что по какой-либо причине ваш документ не соответствует этим стандартам. Например, те теги <EXTRA TYPE> являются незаконными, поскольку они содержат пробелы.

Прочтите этот обзор на Developer.com.