用Python解析Appengine中xml的最佳方法 [英] Best way to parse xml in Appengine with Python
本文介绍了用Python解析Appengine中xml的最佳方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我连接到isbndb.com以获取图书信息,他们的回复如下所示:
I am connecting to isbndb.com for book information and their response looks like this:
<?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>
使用appengine(Python)将这些数据转换为对象的最佳方法是什么?
What is the best way to turn this data into an object using appengine (Python)?
我需要isbn号码(BookData中的一个标签),但我还需要BookData的所有子元素的内容(而不是标签)。 / b>
I need the isbn number (a tag in BookData) but I also need the contents (as opposed to tags) of all the children of BookData.
推荐答案
>>> 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;)
这篇关于用Python解析Appengine中xml的最佳方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文