вот такой код

# -*- coding: UTF-8 -*-
import xml.sax.handler



parser = xml.sax.make_parser( )
parser.parse("air1_0511.xml")


выдает
D:\>exa.py
Traceback (most recent call last):
File "D:\exa.py", line 7, in <module>
parser.parse("air1_0511.xml")
File "C:\Python25\lib\xml\sax\expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "C:\Python25\lib\xml\sax\xmlreader.py", line 123, in parse
self.feed(buffer)
File "C:\Python25\lib\xml\sax\expatreader.py", line 211, in feed
self._err_handler.fatalError(exc)
File "C:\Python25\lib\xml\sax\handler.py", line 38, in fatalError
raise exception
xml.sax._exceptions.SAXParseException: air1_0511.xml:4:116: not well-formed (inv
alid token)


Как бы мне разобрать это xml(во вложении)?
что то вложения не видно поэтому вставлю кусок фала сюда
<?xml version="1.0" ?>
<root TimeCodeFormat="10ms" FrameRate="25.00">
<item type="Video2" block="" date="2008-05-11" time="18:58:03.23" duration="0:01:57.00" fadeIn="0:00:00.10" fadeOut="0:00:00.00" realDuration="0:01:57.00" error="0" />
<item type="Movie" block="" date="2008-05-11" time="19:00:01.24" duration="0:35:10.16" fadeIn="0:00:00.10" file="C:\эфиры\акценты_11_05_08.m2p" fadeOut="0:00:00.00" realDuration="0:35:10.16" error="0" />
<item type="Video1" block="" date="2008-05-11" time="19:35:12.42" duration="0:00:01.00" fadeIn="0:00:00.10" fadeOut="0:00:00.00" realDuration="0:00:01.00" error="0" />
<item type="Video2" block="" date="2008-05-11" time="20:58:02.12" duration="0:01:57.00" fadeIn="0:00:00.10" fadeOut="0:00:00.00"

Всякие дапы удобно через dumpz.org показывтаь. Мне ошибка на мыло пришла - надеюсь, поправил. Там почему-то владельцем на каталог аттачментов root стоял :-)

Отвечаю на вопрос. Проще всего XML разбирать через BeautifulSoup или xml.etree.ElementTree.

А XML у вас невалидный т.к. нет закрывающего тэга </root> и вот item последний тоже без />

item последний закрывается тут просто не поставилось, а финального root действительно нет. Но это так логи пишет сторонний софт. Попробую добавить </root>
поправил исходник http://dumpz.org/8558/
но теперь новая проблема Которая связана уже более просто с питоном который я изучаю совсем недавно. В исходнике есть список a в нем содержаться словари. добавляю я их с помощью append, но при последующем проходе циклом этого списка не удается извлеч элементы словаря.

а вот это исходный XML файл http://dumpz.org/8559/

Посмотрите пожалуйста кто-нибудь что я сделал не так в исходнике.

Не совсем понял, что вы там делаете,но вот словарь точно неправильно используете :-)

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

Вам нужно создавать словарь каждый раз заново на каждой итерации.

а как это делать?
g.clear()?
или g = {}?

Нужно каждый раз заново создавать объект. g = {}

Спасибо большое. Теперь все заработало.