python 将xml转换成txt文件(xml.etree方法)

概述

先来介绍一下xml格式的文件,从数据分析的角度去看xml格式的数据集,具有以下的优点开放性(能在任何平台上读取和处理数据,允许通过一些网络协议交换xml数据)、简单性(纯文本,能在不同的系统之间交换数据)、结构和内容分离(不同于HTML,数据的显示和数据本身是分开的)、可扩展性(派生出其他标记语言)

问题描述

那么我们在进行数据分析的时候,如何运用xml里面的数据呢?
我们就需要将这类文件转化成其他类型的文件。
(其实我认为说成提取xml的数据组成新的类型文件比较好一点)
就我个人的观点,处理这方面的问题有点类似于网络爬虫,但不同于爬虫的是不需要考虑IP代理地址的问题(反爬确实是一个很难处理的问题)

问题解决方案

xml格式文件显示内容大致如下:
在这里插入图片描述

import os
import sys
import xml.etree.ElementTree as ET
import glob

def xml_to_txt(indir, outdir):
    os.chdir(indir) # indir为xml文件来源的文件夹,outdir为转换的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数据集上找到自己所需要数据对应的标签,想办法将其赋予一个变量,再将其写入新文件里就ok了
        for value in root.iter('xxx'):
            value = value.text
            f_w.write(value)
            f_w.write('\n\n')

还有我要说几句这个方法还是挺好用的,在你处理一个包含很多.xml文件夹的时候,能够直接读取所有xml文件,这样处理起来也比较方便。


希望这篇文章对大家的学习有所帮助~

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小k同学!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值