Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python 3.7中使用HTML实体解析XML/XLIFF_Xml_Python 3.7_Elementtree_Html Entities_Xliff - Fatal编程技术网

如何在Python 3.7中使用HTML实体解析XML/XLIFF

如何在Python 3.7中使用HTML实体解析XML/XLIFF,xml,python-3.7,elementtree,html-entities,xliff,Xml,Python 3.7,Elementtree,Html Entities,Xliff,我有下面的示例代码 示例.py #/usr/bin/env蟒蛇3 #-*-编码:utf-8-*- 将xml.etree.ElementTree作为ET导入 xliff='' 要翻译的东西 与实体的翻译&;东西 ''' tree=ET.fromstring(xliff) #使用外部文件ET.parse(xliffPath)时相同 在python 3.7中运行它时,出现以下错误: 回溯(最近一次呼叫最后一次): 文件“\example.py”,第17行,在 tree=ET.fromstrin

我有下面的示例代码

示例.py

#/usr/bin/env蟒蛇3
#-*-编码:utf-8-*-
将xml.etree.ElementTree作为ET导入
xliff=''
要翻译的东西
与实体的翻译&;东西
'''
tree=ET.fromstring(xliff)
#使用外部文件ET.parse(xliffPath)时相同
在python 3.7中运行它时,出现以下错误:

回溯(最近一次呼叫最后一次):
文件“\example.py”,第17行,在
tree=ET.fromstring(xliff)
文件“PathToPython37\lib\xml\etree\ElementTree.py”,第1315行,xml格式
parser.feed(文本)
xml.etree.ElementTree.ParseError:未定义的实体:第7行第33列
它抱怨
&和其他html实体


问题是如何用Python3.7解析包含HTML实体的XML,最好是
XML.etree.ElementTree

此外,我还检查了它是否有早期版本python的答案,备选答案建议XML格式不好,但我不明白为什么实体不是翻译的有效内容?我还检查了一些其他类型的相关问题,但没有一个给我任何解决方法的提示。XML中没有HTML实体。这是语法上无效的XML-它是如何创建的?外部工具也会将这些翻译显示为html的一部分。如果ElementTree不理解这些实体,为什么要尝试对它们做任何事情?它不能忽略它们吗?这些实体在XML中无效。它们是未定义的。没有XML解析器可以读取这些文件,这不仅限于ElementTree。如果您只需要“取出数据”,那么您可以尝试使用HTML解析器读取它们(内置ElementTree不起作用,但HTML模式下的lxml会起作用)。