使用python将未编码的字符串存储到文件中
temp.XML使用python将未编码的字符串存储到文件中,python,Python,temp.XML <?xml version="1.0" encoding="utf-8"?> <PubmedArticleSet> <LastName>Nalivaĭko</LastName> <ForeName>Anthony V</ForeName> </PubmedArticleSet> 纳利瓦科 安东尼五世 我的代码 import xml.dom.minidom doc = x
<?xml version="1.0" encoding="utf-8"?>
<PubmedArticleSet>
<LastName>Nalivaĭko</LastName>
<ForeName>Anthony V</ForeName>
</PubmedArticleSet>
纳利瓦科
安东尼五世
我的代码
import xml.dom.minidom
doc = xml.dom.minidom.parse("temp.xml");
file = open('output1.xml','w')
articles = doc.getElementsByTagName('PubmedArticleSet')
for art in articles:
ln = art.getElementsByTagName("LastName")[0]
data = ln.firstChild.nodeValue
file.write("<LastName>")
file.write(data)
file.write("</LastName>\n")
print("Completed")
file.close()
import xml.dom.minidom
doc=xml.dom.minidom.parse(“temp.xml”);
file=open('output1.xml','w')
articles=doc.getElementsByTagName('PubmedArticleSet')
关于文章中的艺术:
ln=art.getElementsByTagName(“姓氏”)[0]
数据=ln.firstChild.nodeValue
file.write(“”)
文件写入(数据)
文件。写入(“\n”)
打印(“已完成”)
file.close()文件
我需要输出与LastName标记中的字符串相同
所需输出-Nalivaĭko
我在运行代码时遇到此错误
Traceback (most recent call last):
File "C:\Users\Yugam\Desktop\python\ParsingUsingDOM.py", line 12, in <module>
file.write(data)
File "C:\Users\Yugam\AppData\Local\Programs\Python\Python37-32\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\u012d' in position 6: character maps to <undefined>
回溯(最近一次呼叫最后一次):
文件“C:\Users\Yugam\Desktop\python\ParsingUsingDOM.py”,第12行,在
文件写入(数据)
文件“C:\Users\Yugam\AppData\Local\Programs\Python\Python37-32\lib\encodings\cp1252.py”,第19行,在encode中
返回codecs.charmap\u encode(输入、自身错误、编码表)[0]
UnicodeEncodeError:“charmap”编解码器无法对位置6中的字符“\u012d”进行编码:字符映射到
您可以打开文件以使用所需的编码进行写入,如下所示:
open('output1.xml','w', encoding='utf-8')
然后您可以像平常一样写出unicode字符串
输出文件:
<LastName>Nalivaĭko</LastName>
Nalivaĭko