首先这是我们要读取的XML文件

<?xml version="1.0" encoding="utf-8" ?>

windows

Chorm

http://www.baidu.com

北京

上海

西安

成都

1.获取标签信息

首先要导入xml的mindom模块,用来处理xml文件,parse()用于打开XML文件。documentE;ement用于得到XML文件的唯一根元素

#coding=utf-8

from xml.dom import minidom

#打开xml文件

date = minidom.parse('info.xml')

#得到文档的对象

root = date.documentElement

#打印节点名称

print root.nodeName

#打印节点值

print root.nodeValue

#打印节点类型

print root.nodeType

print root.ELEMENT_NODE

2.获得任意标签名

#coding=utf-8

from xml.dom import minidom

#打开xml文件

date = minidom.parse('info.xml')

#得到文档的对象

root = date.documentElement

#获取标签名为browser的一组标签

tagname = root.getElementsByTagName('browser')

#打印标签名

print tagname[0].tagName

tagname = root.getElementsByTagName('login')

print tagname[1].tagName

tagname = root.getElementsByTagName('province')

print tagname[1].tagName

3.获得标签的属性值

#coding=utf-8

from xml.dom import minidom

#打开xml文件

date = minidom.parse('info.xml')

#得到文档的对象

root = date.documentElement

#获取标签名为login的一组标签

logins = root.getElementsByTagName('login')

#获取login下第一个username属性值

username = logins[0].getAttribute("username")

print username

#获取login下第一个passwd属性值

passwd = logins[0].getAttribute("passwd")

print passwd

#获取login下第二个username属性值

username = logins[1].getAttribute("username")

print username

#获取login下第二个passwd属性值

passwd = logins[1].getAttribute("passwd")

print passwd

4.获取标签对之间的数据

#coding=utf-8

from xml.dom import minidom

#打开xml文件

date = minidom.parse('info.xml')

#得到文档的对象

root = date.documentElement

#获取标签名为province的一组标签

provinces = root.getElementsByTagName('province')

citys = root.getElementsByTagName('city')

#获取第二个province标签对的值,firstChild返回被选节点的第一个子节点,data表示获取该节点的数据

p2 = provinces[1].firstChild.data

print p2

#获取第一个city标签对的值

c1 = citys[0].firstChild.data

print c1

#获取第二个city标签对的值

c2 = citys[1].firstChild.data

print c2

python 读取xml文件内容并完成修改

import os

import xml.etree.ElementTree as ET

def changesku(inputpath):

listdir = os.listdir(inputpath)

for file in listdir:

if file.endswith('xml'):

file = os.path.join(inputpath,file)

tree = ET.parse(file)

root = tree.getroot()

for object1 in root.findall('object'): #我要修改的元素在object里面,所以需要先找到object

for sku in object1.findall('name'): #查找想要修改的所有同种元素

if (sku.text == '005'): #‘005’为原始的text

sku.text = '008' #修改‘name’的标签值

tree.write(file,encoding='utf-8') #写进原始的xml文件,不然修改就无效,‘encoding = “utf - 8”’避免原始xml #中文字符乱码

else:

pass

else:

pass

if __name__ == '__main__':

inputpath = 'D:\\easy\\hebing_xml' #这是xml文件的文件夹的绝对地址

changesku(inputpath)

python读取xml文件内容_selenium-python读取XML文件相关推荐

  1. python读文件每一行-Python文件内容按行读取到列表中

    Python文件内容按行读取到列表中 示例文件内容如下: Hello World Python 通常来讲,我们如果只是迭代文件对象每一行,并做一些处理,是不需要将文件对象转成列表的,因为文件对象本身可 ...

  2. JAVA读取文件内容,按格式输出文件

    JAVA读取文件内容,按格式输出文件记录 一.我们要做什么? 1.本次我们来使用java将文件按格式输出. 二.我们为什么要做? 1.在使用jmeter脚本时候有个动态参数的文件,需要读取多个参数,人 ...

  3. python中按照文件夹中文件的排列顺序读取文件内容,python文件显示和windows目录显示一致

    原创 python中按照文件夹中文件的排列顺序读取文件内容 2018-12-06 11:49:18 途径北海道 阅读数 3891 更多 分类专栏: python 版权声明:本文为博主原创文章,遵循 C ...

  4. 【框架思路】python如何读取excel文件内容?如何获取excel文件的路径及sheet名称?

    转载请注明作者和出处:美二 https://blog.csdn.net/qq_32654897/article/details/88579713 一.背景说明 在自动化项目中,有时候测试用例会放在ex ...

  5. python pandas读取文件内容_python pandas读取大型文件

    数据处理:pandas处理大型csv文件,使用pandas分块处理大文件 1. 读取限定列 一个 csv文件中,有很多列,而我们只关心其中的某些列是,如果把每行数据都读取出来,在提取信息,显然会增加I ...

  6. php读取文件内容不全,php读取文件内容的三种方法

    //**************第一种读取方式***************************** 代码如下: header("content-type:text/html;chars ...

  7. python编程读写文件内容_Python编程中对文件和存储器的读写示例

    #!/usr/bin/python # -*- coding: utf-8 -*- # Filename: using_file.py # 文件是创建和读取 s = '''''我们都是木头人, 不许说 ...

  8. java实时读取文件内容,java实时读取和写入文件

    实时读取和写入指定文件的内容 1.[代码][Java]代码 package org.log.file; import java.io.*; import java.text.SimpleDateFor ...

  9. 怎么读服务器文件内容,服务器上读取文件内容

    服务器上读取文件内容 内容精选 换一换 通过云服务器或者外部镜像文件创建私有镜像时,如果云服务器或镜像文件所在虚拟机的网络配置是静态IP地址时,您需要修改网卡属性为DHCP,以使私有镜像发放的新云服务 ...

  10. 批量修改文件内容(Python版)

    目录 前言 一.为什么选择 python 二.使用步骤 1.搜索 2.替换 3 整合 4 脚本使用 前言 接上文 批量修改文件内容 一.为什么选择 python 近年来 Python 的使用率越来越高 ...

最新文章

  1. 文本类文件与VS关联-实践
  2. 笔记-项目整体管理-项目管理计划
  3. python单向链表和双向链表的图示代码说明
  4. 《大数据》杂志——大数据容灾备份技术挑战和增量备份解决方案
  5. android4.4安全性,[原创]Android第二代加固(support 4.4-8.1)
  6. ListView使用BaseAdapter与ListView的优化
  7. 42步进电机转速力矩曲线_42步进电机转速范围说明(28步进电机转速测试)
  8. SpringBoot2核心技术-笔记
  9. 黑桃怎么用html代码,index.html
  10. STM32f103系列和f107系列移植
  11. 锐龙r7 4800h性能怎么样
  12. yum及yum-config-manager命令详解
  13. Go语言如何自定义 linter(静态检查工具)
  14. 新手必看!EEGLAB工具包下载、安装及数据导入教程
  15. ####好好#####利用各种信息作为因子的股票价格预测模型研究过程
  16. c语言编程输出指定范围的素数,C语言输出范围内所有素数
  17. 安卓效率微商_机友大师app-机友大师 安卓版v2.3.4-pc6手机下载
  18. 服务器磁盘阵列-RAID配置
  19. 某查查请求头随机加密参数
  20. 【太遗憾】这些杀毒软件你竟不了解?

热门文章

  1. ftp——服务器发回了不可路由的地址。使用服务器地址代替。
  2. audiopolicy
  3. 无码建站WebFlow初体验
  4. PHP入门-数组的定义与使用
  5. PHP从入门到放弃之(一)PHP介绍PHP学习路线图PHP开发软件环境搭建
  6. HTB-Popcorn
  7. 【软件定义汽车】【架构篇】汽车软件架构
  8. MongoDB cmd命令操作
  9. public static T ListT full(ListT list, PredicateT p) 第一个T是什么意思?
  10. hdu1240 Asteroids!(三维bfs水)