Python練習之讀取XML節(jié)點和屬性值的方法
更新時間:2022年06月13日 10:12:56 作者:??孤寒者????
這篇文章主要介紹了Python練習之讀取XML節(jié)點和屬性值的方法,通過parse函數(shù)可以讀取XML文檔,該函數(shù)返回ElementTree類型的對象,通過該對象的iterfind方法可以對XML中特定節(jié)點進行迭代
面試題
有一個test.xml文件,要求讀取該文件中products節(jié)點的所有子節(jié)點的值以及子節(jié)點的屬性值。
test.xml文件:
<!-- products.xml --> <root> <products> <product uuid='1234'> <id>10000</id> <name>蘋果</name> <price>99999</price> </product> <product uuid='1235'> <id>10001</id> <name>小米</name> <price>999</price> </product> <product uuid='1236'> <id>10002</id> <name>華為</name> <price>9999</price> </product> </products> </root>
解析
# coding=utf-8 from xml.etree.ElementTree import parse doc = parse('./products.xml') print(type(doc)) for item in doc.iterfind('products/product'): id = item.findtext('id') name = item.findtext('name') price = item.findtext('price') uuid = item.get('uuid') print('uuid={}, id={}, name={}, price={}'.format(uuid, id, name, price), end='\n----------\n')
- 通過parse函數(shù)可以讀取XML文檔,該函數(shù)返回ElementTree類型的對象,通過該對象的iterfind方法可以對XML中特定節(jié)點進行迭代。
- XML結(jié)構(gòu)的獨特,使得它很方便在任何應(yīng)用程序中讀和寫數(shù)據(jù),所以XML非??炀统蔀閿?shù)據(jù)交換的唯一公共語言,雖然不同軟件也支持其他的數(shù)據(jù)交換格式,但這并不影響,支持XML數(shù)據(jù)交換格式的應(yīng)用程序可以十分容易的與windows,linux或者其他平臺產(chǎn)生的信息結(jié)合,然后可以十分方便的加載XML數(shù)據(jù)到程序中并分析它,最后以XML格式輸出結(jié)果。
- 不過細心的朋友應(yīng)該能發(fā)現(xiàn),這個格式的數(shù)據(jù)與我們在爬蟲爬取數(shù)據(jù)時,未經(jīng)處理的原始數(shù)據(jù)格式十分相像,甚至讀取操作都幾乎一模一樣,有興趣的朋友可以自行去搜索看看這兩種數(shù)據(jù)格式的背景哦
到此這篇關(guān)于Python練習之讀取XML節(jié)點和屬性值的方法的文章就介紹到這了,更多相關(guān)Python讀取XML內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python continue繼續(xù)循環(huán)用法總結(jié)
本篇文章給大家總結(jié)了關(guān)于Python continue繼續(xù)循環(huán)的相關(guān)知識點以及用法,有需要的朋友跟著學習下吧。2018-06-06python實現(xiàn)自動發(fā)送郵件發(fā)送多人、群發(fā)、多附件的示例
下面小編就為大家分享一篇python實現(xiàn)自動發(fā)送郵件發(fā)送多人、群發(fā)、多附件的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01Python開發(fā)常用五種循環(huán)方式的場景性能比較
Python是一門高級編程語言,其擁有多種循環(huán)方式,如for循環(huán)、while循環(huán)、do-while循環(huán)等。本文將逐個分析Python所有的循環(huán)執(zhí)行效率和適用場景,需要的可以參考一下2023-04-04Python通過Tesseract庫實現(xiàn)文字識別
這篇文章主要介紹了Python通過Tesseract庫實現(xiàn)文字識別,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-03-03