擅长:python、mysql、java
<p>尽管你的问题是这样说的:</p>
<pre><code>parser = TagParser()
src = '''\
<some_root_name>
<tag_x>bubbles</tag_x>
<tag_y>car</tag_y>
<tag...>42</tag...>
</some_root_name>'''
sax.parseString(src, parser)
pprint.pprint(parser.tags)
</code></pre>
<p><code>parser.tags</code>结果是:</p>
^{pr2}$
<p>您的另一个示例失败了,但这仅仅是因为它不是有效的XML:</p>
<pre><code>src = '''<review type="review"><link>http://www.openlist.com/new-york-ny/mickey-mantles/27612417/?numReviews=178</link>'''
parser = TagParser()
sax.parseString(src, parser)
pprint.pprint(parser.tags)
</code></pre>
<p>在源代码中,<code>review</code>标记从未关闭,因此这不是一个有效的XML片段,因此当您尝试解析它时,它会引发异常。在</p>
<p>如果您的问题是从有效文档中取出不完整的片段,请不要这样做;将整个<code>review</code>标记全部取出并解析,而不是试图从中解析出一行。在</p>
<p>如果您的问题是源数据实际上不是有效的XML,那么您需要使用一个解析器来处理损坏的XML,比如<a href="http://www.crummy.com/software/BeautifulSoup/" rel="nofollow">BeautifulSoup</a>;<code>ElementTree</code>和{<cd5>}都不能工作。在</p>