首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在xmltodict中捕获ExpatError

在xmltodict中捕获ExpatError
EN

Stack Overflow用户
提问于 2014-08-07 13:42:05
回答 2查看 8.3K关注 0票数 11

我正在使用xmltodict来解析xml。

如果我们解析无效的xml,它会抛出一个ExpatError

我怎么抓到这个?下面是我在ipython shell中尝试过的内容

代码语言:javascript
复制
>>> import xmltodict
>>> xml_data = """<?xml version="1.0" encoding="UTF-8" ?>
...     <Website>"""

>>> xml_dict = xmltodict.parse(xml_data)
ExpatError: no element found

>>> try:                      
...     xml_dict = xmltodict.parse(xml_data)
... except ExpatError:
...     print "that's right"
NameError: name 'ExpatError' is not defined

>>> try:                      
...     xml_dict = xmltodict.parse(xml_data)
... except xmltodict.ExpatError:
...     print "that's right"
AttributeError: 'module' object has no attribute 'ExpatError'
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-07 13:46:28

您需要从ExpatError中导入xml.parsers.expact

代码语言:javascript
复制
from xml.parsers.expat import ExpatError
票数 14
EN

Stack Overflow用户

发布于 2014-08-07 13:49:50

xmltodict模块本身中找到它,因此不需要将它与xml模块单独导入。

代码语言:javascript
复制
>>> try:                                             
...     xml_dict = xmltodict.parse(xml_data)
... except xmltodict.expat.ExpatError:
...     print "that's right"
... 
that's right
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25184153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档