使用 python 和 lxml,有没有办法在 xml 文件的 doctype 中获取实体列表?这是缩小的xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dmodule [
<!ENTITY somegraphic1 SYSTEM 'somegraphic1.cgm' NDATA cgm>
<!ENTITY somegraphic2 SYSTEM 'somegraphic2.cgm' NDATA cgm>
<!NOTATION cgm SYSTEM 'cgm'>
<!ENTITY % ISOEntities PUBLIC 'ISO 8879-1986//ENTITIES ISO Character Entities 20030531//EN//XML' 'http://www.s1000d.org/S1000D_4-1/ent/xml/ISOEntities'>
%ISOEntities;]>
<dmodule>
<graphic ident="somegraphic1"/>
<graphic ident="somegraphic2"/>
</dmodule>
我可以使用 lxml 解析文件并检索 doctype 中列出的实体 (!ENTITY) 吗?我想要最终结果为 ['somegraphic1.cgm', 'somegraphic2.cgm'] 的图形文件列表。目前,代码(不优雅)只是打开 xml 文件并逐行读取,直到<dmodule然后拆分寻找以“.cgm”结尾的字符串的行 - 呸。如果lxml不能,请推荐另一种方式。
qq_花开花谢_0
慕的地8271018
相关分类