解決python將xml格式文件轉(zhuǎn)換成txt文件的問題(xml.etree方法)
概述
先來介紹一下xml格式的文件,從數(shù)據(jù)分析的角度去看xml格式的數(shù)據(jù)集,具有以下的優(yōu)點開放性(能在任何平臺上讀取和處理數(shù)據(jù),允許通過一些網(wǎng)絡(luò)協(xié)議交換xml數(shù)據(jù))、簡單性(純文本,能在不同的系統(tǒng)之間交換數(shù)據(jù))、結(jié)構(gòu)和內(nèi)容分離(不同于HTML,數(shù)據(jù)的顯示和數(shù)據(jù)本身是分開的)、可擴展性(派生出其他標記語言)
問題描述
那么我們在進行數(shù)據(jù)分析的時候,如何運用xml里面的數(shù)據(jù)呢?
我們就需要將這類文件轉(zhuǎn)化成其他類型的文件。
(其實我認為說成提取xml的數(shù)據(jù)組成新的類型文件比較好一點)就我個人的觀點,處理這方面的問題有點類似于網(wǎng)絡(luò)爬蟲,但不同于爬蟲的是不需要考慮IP代理地址的問題(反爬確實是一個很難處理的問題)
問題解決方案
xml格式文件顯示內(nèi)容大致如下:
import os import sys import xml.etree.ElementTree as ET import glob def xml_to_txt(indir, outdir): os.chdir(indir) # indir為xml文件來源的文件夾,outdir為轉(zhuǎn)換的txt文件存儲路徑 annotated = os.listdir('.') # 返回包含目錄中文件名稱的列表 print(annotated) for i, file in enumerate(annotated): file_save = file.split('.')[0] + '.txt' #split將文件名與后綴名劃分開來 file_txt = outdir + "\\"+file_save f_w = open(file_txt, 'w') in_file = open(file,encoding='UTF-8') tree = ET.parse(in_file) root = tree.getroot() # 以下代碼可忽略,你要在xml數(shù)據(jù)集上找到自己所需要數(shù)據(jù)對應(yīng)的標簽,想辦法將其賦予一個變量,再將其寫入新文件里就ok了 for value in root.iter('xxx'): value = value.text f_w.write(value) f_w.write('\n\n')
還有我要說幾句這個方法還是挺好用的,在你處理一個包含很多.xml文件夾的時候,能夠直接讀取所有xml文件,這樣處理起來也比較方便。
到此這篇關(guān)于python將xml格式文件轉(zhuǎn)換成txt文件的問題及解決方法(xml.etree方法)的文章就介紹到這了,更多相關(guān)python xml轉(zhuǎn)換成txt文件內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。