How to get an XML DOM while offline?

Diez B. Roggisch deets at nospam.web.de
Wed Mar 19 11:27:50 EDT 2008


william tanksley wrote:

> I want to parse my iTunes Library xml. All was well, until I unplugged
> and left for the train (where I get most of my personal projects
> done). All of a sudden, I discovered that apparently the presence of a
> DOCTYPE in the iTunes XML makes xml.dom.minidom insist on accessing
> the Internet... So suddenly I was unable to do any work.
> 
> I don't want to modify the iTunes XML; iTunes rewrites it too often.
> How can I prevent xml.dom.minidom from dying when it can't access the
> Internet?
> 
> Is there a simpler way to read the iTunes XML? (It's merely a plist,
> so the format is much simpler than general XML.)

Normally, this should be solved using an entity-handler that prevents the
remote fetching. I presume the underlying implementation of a SAX-parser
does use one, but you can't override that (at least I didn't find anything
in the docs)

The most pragmatic solution would be to rip the doctype out using simple
string methods and/or regexes.

Diez



More information about the Python-list mailing list