日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python脚本分享:xml文件批量修改

發(fā)布時間:2024/3/13 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python脚本分享:xml文件批量修改 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

今天分享一個我自己寫的實用腳本,主要是將.xml文件進(jìn)行批量的修改

首先,聲明我并不是很了解.xml的相關(guān)知識,所以今天主要是以我遇到的問題來做個記錄。

想要更多的了解xml,請看最后的資料分享。

效果展示:

因為這些是屬于我們項目小組的,我也不清楚是不是有什么不能公開的,我就截取了一小部分,原本是用lambelme來修改的,但由于xml文件似乎讀不進(jìn)去,所以只有手動修改,將water改為blue(重要的是一個一個用記事本打開,手動修改),這時候我的第一生產(chǎn)力產(chǎn)生了,because I am lazy。

這是下面的pyxml.py文件

import os import os.path import xml.dom.minidom as mdpath = 'E:\\Deeplearning\\Road_Detect_Project\\road_surface_mark\\Annot\\' files = os.listdir(path) # 得到文件夾下所有文件名稱 def main():for xmlFile in files: # 遍歷文件夾if not os.path.isdir(xmlFile): # 判斷是否是文件夾,不是文件夾才打開dom = md.parse(os.path.join(path,xmlFile))root = dom.documentElementnames = root.getElementsByTagName('name') #對某個標(biāo)簽進(jìn)行修改# print(name[0].firstChild.data)for i in range(len(names)):print(names[i].firstChild.data)a=names[i].firstChild.dataprint(type(a))names[i].firstChild.data = "red"print(names[i].firstChild.data)with open(os.path.join(path,xmlFile), 'w') as fh:dom.writexml(fh)print('夏天是冰紅茶的文件成功寫入') #使用時,請不要刪除這段if __name__ == '__main__':main()

?我說一下問題,因為小組的其他師兄有用中文路徑,就會發(fā)生下面的情況:

但是記事本打開是正常的,也已經(jīng)修改成功了。

我查了,是因為編碼的問題,可以把XML文件的格式用記事本另存為ANSI就可以了(我不知道怎么另存為,可以看到記事本里面的編碼格式是ANSI,所以我覺得這個方法是行得通的),還可以將第一行修改為

<?xml version="1.0" encoding="GBK"?>

這種我是成功了。(別建議我打馬賽克)下次組會,我一定要提這個問題,以前因為路徑中有中文吃了很多虧,所以我現(xiàn)在建工程都是盡量去用英文。

?

參考資料:

如何在Python中解析和修改XML?- 極客極客 (geeksforgeeks.org)

xml.dom.minidom (Structured Markup) - Python 中文開發(fā)手冊 - 開發(fā)者手冊 - 騰訊云開發(fā)者社區(qū)-騰訊云 (tencent.com)

XML系列教程 (w3school.com.cn)?

總結(jié)

以上是生活随笔為你收集整理的python脚本分享:xml文件批量修改的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。