用python

时间:2017-08-02 15:03:03

标签: python xml xml-parsing

我有一个word文档,保存为xml。我试图从字典中替换文件中的单词。我之前的尝试没有涉及任何XML解析并且工作得很好。

    import pickle 
    mine=open('dictionary.txt')
    D=pickle.load(mine)
    mine.close()
    mine = open('text.xml')
    t = mine.read()
    Ks = D.keys()
    for key in Ks:
            t=t.replace(key,D1[key])

不幸的是,由于Microsoft Word的性质,一些替换不会被制作,因为它们与XML标记分开。我想使用ElementTree来解析XML来解决这个问题。我在目前的实施方面遇到了一些问题。

import xml.etree.ElementTree as ET
import pickle

tree = ET.parse('test.xml')
root = tree.getroot()

mine=open('testDict.txt')
D=pickle.load(mine)
mine.close()
Ks=D.keys()

for key in Ks:
    tree.find(key).text = D1[key]

tree.write('test.xml', xml_declaration = True, encoding = "UTF-8", method = "xml", standalone = "yes")

这会引发"属性错误:' NoneType'对象没有属性' text'"。 任何帮助将不胜感激。

0 个答案:

没有答案