当前位置: 首页 > news >正文

中合网络网站建设企业管理培训班

中合网络网站建设,企业管理培训班,php根据ip 跳转网站,做网站十大公司哪家好目录1、导入模块 →\rightarrow→ 读取文件 →\rightarrow→ 获取根节点 →\rightarrow→ 获取根节点的标签与属性2、遍历一级子节点、获取子节点的标签 与 属性3、通过索引 获取数据4、Element.findall()、Element.find() - 按照 tag 值查找 子节点5、Element.iter() - 循环迭…

目录


假设有xml文件内容如下:

<?xml version="1.0"?>
<data><country name="Liechtenstein"><rank>1</rank><year>2008</year><gdppc>141100</gdppc><neighbor name="Austria" direction="E"/><neighbor name="Switzerland" direction="W"/></country><country name="Singapore"><rank>4</rank><year>2011</year><gdppc>59900</gdppc><neighbor name="Malaysia" direction="N"/></country><country name="Panama"><rank>68</rank><year>2011</year><gdppc>13600</gdppc><neighbor name="Costa Rica" direction="W"/><neighbor name="Colombia" direction="E"/></country><neighbor name="xxxx" direction="W"/>
</data>

1、导入模块 →\rightarrow 读取文件 →\rightarrow 获取根节点 →\rightarrow 获取根节点的标签与属性

import xml.etree.ElementTree as ET# 读取文件
tree = ET.parse('test.xml', parser=None)# 获取根
root = tree.getroot()
print(root)   # <Element 'data' at 0x10c8b2b30># 根的标签与属性
print(root.tag)   # data
print(root.attrib)   # {}

另一种方式是 通过 openread() 将文件内容读取为字符串 str 格式。
再通过 ET.fromstring() 函数获取root 节点。获取 root 节点之后的操作就都一样了。

import xml.etree.ElementTree as ETwith open('text.xml') as f:data_str = f.read()root = ET.fromstring(data_str)
print(root.tag)   # data
print(root.attrib)   # {}

2、遍历一级子节点、获取子节点的标签 与 属性

for child in root:print(child.tag, child.attrib)
# country {'name': 'Liechtenstein'}
# country {'name': 'Singapore'}
# country {'name': 'Panama'}

3、通过索引 获取数据

  • rootrootroot是根节点
  • root[0]root[0]root[0] 是下一级子节点的第1个元素
  • root[0][1]root[0] [1]root[0][1]是下二级子节点的第2个元素
print(root[0][1].tag)   # year
print(root[0][1].attrib)   # {}
print(root[0][1].text)   # 2008

4、Element.findall()、Element.find() - 按照 tag 值查找 子节点

Element.findall()Element.find()

'''
Element.findall('xxx') :查找当前节点(Element)下,tag为'xxx' 的所有子节点,放到一个list中
Element.find('xxx'):查找当前节点(Element)下,tag为'xxx' 的第一个子节点
Element.get(key) : (节点属性是一个字典)获取节点属性 对应的 value 
'''
for country in root.findall('country'):rank = country.find('rank').text   #name = country.get('name') print(name, rank)
# Liechtenstein 1
# Singapore 4
# Panama 68

5、Element.iter() - 循环迭代方式 查找指定 tag 的节点

这里 循环迭代方式 指的是,在该节点下的 所有阶 的子节点中查找。不像 find 和 findall,find 和 findall 只在 一级子节点中查找。

# 生成一个迭代器
print(root.iter('neighbor'))   # <_elementtree._element_iterator object at 0x101a6d630># root 节点下,循环迭代的方式查找 tag 为 'neighbor' 的 子节点
for neighbor in root.iter('neighbor'):print(neighbor.attrib)
# {'name': 'Austria', 'direction': 'E'}
# {'name': 'Switzerland', 'direction': 'W'}
# {'name': 'Malaysia', 'direction': 'N'}
# {'name': 'Costa Rica', 'direction': 'W'}
# {'name': 'Colombia', 'direction': 'E'}
# {'name': 'xxxx', 'direction': 'W'}
http://www.ds6.com.cn/news/12809.html

相关文章:

  • 政府网站电子政务外网建设总结长沙seo网络推广
  • 重庆网站制作特点优势品牌营销成功案例
  • 如何做服装的微商城网站建设友链交换网站
  • 企业营销网站建设百度推广竞价是什么意思
  • 专业做设计师品牌网站奉化云优化seo
  • mb个人网站软文广告平台
  • 做网站下面会有小广告三只松鼠的软文范例
  • 网站建设企业策划书精准营销的概念
  • 专业网站制作公司排行河南seo快速排名
  • files.wordpress.com名词解释搜索引擎优化
  • 做视频广告在哪个网站能够赚钱南昌seo排名优化
  • 企业为什么要自助建站企业seo
  • 网站做信息流广州百度关键词推广
  • 网站内页做友情链接软文发布平台有哪些
  • 网站响应式建设竞价托管怎么做
  • 做水果的有什么网站好关键词搜索网站
  • python flask做网站站长工具大全
  • 正能量网站大全百度提问登陆入口
  • 石家庄视频网站建设公司西安百度seo推广电话
  • 企业网站优化面向什么工作网络推广宣传
  • 淄博专业网站建设公司直通车推广怎么收费
  • 网站建设 犀牛百度关键词优化公司
  • 国家反诈中心app下载安卓版seo网站推广优化论文
  • 网站建设金手指企业营销模式
  • 建设谷歌公司网站费用百度seo怎么关闭
  • 八宝山做网站的公司友情下载网站
  • 手机网站免费做推广企业宣传册
  • 香港个人网站可以做商业的深圳seo优化公司搜索引擎优化方案
  • 微商网站如何做合肥seo外包平台
  • 公司网站建设的分类学做网站需要学什么