Skip to content Skip to sidebar Skip to footer

Best Way To Parse Xml In Appengine With Python

I am connecting to isbndb.com for book information and their response looks like this:

Solution 1:

use etree:)

>>>xml = """<?xml version="1.0" encoding="UTF-8"?>...<ISBNdb server_time="2005-02-25T23:03:41">... <BookList total_results="1" page_size="10" page_number="1" shown_results="1">...  <BookData book_id="somebook" isbn="0123456789">...   <Title>Interesting Book</Title>...   <TitleLong>Interesting Book: Read it or else..</TitleLong>...   <AuthorsText>John Doe</AuthorsText>...   <PublisherText>Acme Publishing</PublisherText>...  </BookData>... </BookList>...</ISBNdb>"""

from xml.etree import ElementTree as etree
tree = etree.fromstring(xml)

>>>for book in tree.iterfind('BookList/BookData'):...print'isbn:', book.attrib['isbn']...for child in book.getchildren():...print'%s :' % child.tag, child.text... 
isbn: 0123456789
Title : Interesting Book
TitleLong : Interesting Book: Read it or else..
AuthorsText : John Doe
PublisherText : Acme Publishing
>>> 

voila;)

Solution 2:

There is an excellent Python module called BeautifulSoup. Use the BeautifulStoneSoup class for XML parsing.

More info: http://www.crummy.com/software/BeautifulSoup/documentation.html

Post a Comment for "Best Way To Parse Xml In Appengine With Python"