python通过LXML库读取xml命名空间

xml实例版本:

  <a>    <city:table xmlns:city="city">
        <heilongjiang name="citys"><city:haerbin/><city:daqing/></heilongjiang>
        <guangdong name="citys"><city:guangzhou/><city:shenzhen/><city:zhuhai/></guangdong>
        <taiwan name="citys"><city:taibei/><city:gaoxiong/></taiwan>
        <xinjiang name="citys"><city:wulumuqi> 晴</city:wulumuqi></xinjiang>
        </city:table>  </a>    
<city:table xmlns:city="city"></city:table>声明命名空间,city为变量,xmlns定义city变量的值。python 读取输出实例:
        xp=xpxlm.xpath(‘//node()‘)
        print xp,           #.items()#.tag
        for i in xp:
            if ‘‘ in i or ‘\n‘ in i:
                continue
            else:
                print i.tag
输出结果:
{city}table
heilongjiang
{city}haerbin
{city}daqing
guangdong
{city}guangzhou
{city}shenzhen
{city}zhuhai........

改变<city:table xmlns:city="city">为

<city:table xmlns:city="a">输出结果为:
{a}table
heilongjiang
{a}haerbin
{a}daqing
guangdong
{a}guangzhou
{a}shenzhen
{a}zhuhai
taiwan
{a}taibei
{a}gaoxiong
xinjiang
{a}wulumuqi
 


时间: 2024-10-08 04:36:24

python通过LXML库读取xml命名空间的相关文章

Python通过lxml库遍历xml通过xpath查询(标签,属性名称,属性值,标签对属性)

xml实例: 版本一: <?xml version="1.0" encoding="UTF-8"?><country name="chain"><provinces><heilongjiang name="citys"><haerbin/><daqing/></heilongjiang><guangdong name="city

python中用ElementTree.iterparse()读取xml文件中的多层节点

我在使用Python解析比较大型的xml文件时,为了提高效率,决定使用iterparse()方法,但是发现根据网上的例子:每次if event == 'end':之后elem.clear()或者是每次 if elem.tag == '':之后clear(),都只能去到当前标签的相关内容,如果想继续读取得到标签的子标签,则会返回为空,也就是取不到. 其实iterparse()方法的原理是当遇到标签的“>”符号时触发start,当遇到标签的结束标志是会触发end,比如: <item> <

【xml】python的lxml库使用

1.官方教程:http://lxml.de/tutorial.html#parsing-from-strings-and-files  最重要的文档,看完基本就能用了 2.lxml支持xpath,xpath的教程:http://www.w3school.com.cn/xpath/xpath_examples.asp 上面的文档都不长,花不了多长时间看的~

在使用python的lxml库的时候要注意的依赖问题

用pip安装lxml的时候,经常会遇到报错. 通常这跟依赖库有关系,比如libxslt-dev这个包没装. 强烈建议开发人员把生产服务器和开发机配置做100%同步,这样可以避免很多问题. 想交流这个库的同好可以联络我的微博:@王文文IT

Python 爬虫 解析库的使用 --- XPath

一.使用XPath XPath ,全称XML Path Language,即XML路径语言,它是一门在XML文档中查找信息的语言.它最初是用来搜寻XML文档的,但是它同样适用于HTML文档的搜索. 所以在爬虫时,我们完全可以使用XPath来做相应的信息提取.本次随笔中,我们就介绍XPath的基本用法. 1.XPath概览 XPath的选择功能十分强大,它提供了非常简洁明了的路径选择表达式.另外,它还提供了超过100个内建函数,用于字符串.数值.时间的匹配以及节点.序列的处理等.几乎所有我们想要定

Python爬虫利器三之Xpath语法与lxml库的用法

前面我们介绍了 BeautifulSoup 的用法,这个已经是非常强大的库了,不过还有一些比较流行的解析库,例如 lxml,使用的是 Xpath 语法,同样是效率比较高的解析方法.如果大家对 BeautifulSoup 使用不太习惯的话,可以尝试下 Xpath. 参考文档: lxml python 官方文档 XPath语法参考 w3school 安装 pip install lxml 利用 pip 安装即可 XPath语法 XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在

windows 8.1中 Python无法安装lxml库的解决方案

学习Python爬虫时,需要用到lxml库.在安装时,出现了错误! 下面是已经解决的过程: 1. 安装wheel库 1 pip install wheel 2.去 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 下载 对应的lxml库 ,我的是2.7.12版本的(第一个) 3. 安装本地lxml的.whl包  (your-local-path:下载的.whl包路径) pip install your-local-path 完整操作如下: 借鉴了CSDN博客h

Python,ElementTree模块处理XML时注释无法读取和保存的问题

from xml.etree import ElementTree class CommentedTreeBuilder ( ElementTree.XMLTreeBuilder ): def __init__ ( self, html = 0, target = None ): ElementTree.XMLTreeBuilder.__init__( self, html, target ) self._parser.CommentHandler = self.handle_comment d

python专题-读取xml文件

关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是xml? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. abc.xml <?xml version="1.0" encoding="utf-8"?> <catalog> <max