设为首页 收藏本站
查看: 877|回复: 0

[经验分享] python的xml.dom学习笔记

[复制链接]

尚未签到

发表于 2015-4-25 10:25:54 | 显示全部楼层 |阅读模式
  首先说一下,由于这篇文章主要是自己随性学习写的,所以读者看起来可能很乱,呵呵。可以给大家稍微推荐一篇:http://www.iyunv.com/xuxm2007/archive/2011/01/16/1936610.html 稍微清晰一点



#coding=utf-8
#解析xml文件中的所有的link标签
from xml.dom import minidom
from xml.dom.minidom import getDOMImplementation
doc=minidom.parse("d:\\hello.html")
nodes=doc.getElementsByTagName("link")
for node in nodes:
print ""
print "通过另外一种方式获得link标签"
linknodes=doc.getElementsByTagName("link")
for i in range(len(linknodes)):
print linknodes.getAttribute("type"),
print linknodes.getAttribute("rel"),
print linknodes.getAttribute("href")

#操作节点
node=linknodes[0]
print dir(node)
print node.parentNode
print node.prefix
print node.nodeType,node.nodeValue,node.nodeName
print node.localName
print node.childNodes
print node.firstChild,node.lastChild
print node.attributes
print node.namespaceURI
print node.nextSibling
print "--"*10
print node.tagName
print "==="*20
impl=getDOMImplementation()
newdoc=impl.createDocument(None , "some_tag", None)
top_element=newdoc.documentElement
node1=newdoc.createTextNode("node1")
node2=newdoc.createTextNode("node2")
node3=newdoc.createTextNode("node3")
top_element.appendChild(node1)
top_element.appendChild(node2)
top_element.appendChild(node3)
top_element.removeChild(node3)
top_element.insertBefore(node3,node2)
print top_element.childNodes

  运行结果:



< link type=" text/css " rel=" stylesheet " href=" http://www.iyunv.com/css/common.css " />
< link type=" text/css " rel=" stylesheet " href=" http://www.iyunv.com/Skins/kubrick/style.css " />
< link type=" text/css " rel=" stylesheet " href=" http://www.iyunv.com/css/common2.css " />
< link type=" text/css " rel=" stylesheet " href=" http://common.iyunv.com/css/shCore.css " />
< link type=" text/css " rel=" stylesheet " href=" http://common.iyunv.com/css/shThemeDefault.css " />
< link type=" application/rss+xml " rel=" alternate " href=" http://www.iyunv.com/rollenholt/rss " />
< link type=" application/rsd+xml " rel=" EditURI " href=" http://www.iyunv.com/rollenholt/rsd.xml " />
< link type=" application/wlwmanifest+xml " rel=" wlwmanifest " href=" http://www.iyunv.com/rollenholt/wlwmanifest.xml " />
通过另外一种方式获得link标签
text/css stylesheet http://www.iyunv.com/css/common.css
text/css stylesheet http://www.iyunv.com/Skins/kubrick/style.css
text/css stylesheet http://www.iyunv.com/css/common2.css
text/css stylesheet http://common.iyunv.com/css/shCore.css
text/css stylesheet http://common.iyunv.com/css/shThemeDefault.css
application/rss+xml alternate http://www.iyunv.com/rollenholt/rss
application/rsd+xml EditURI http://www.iyunv.com/rollenholt/rsd.xml
application/wlwmanifest+xml wlwmanifest http://www.iyunv.com/rollenholt/wlwmanifest.xml
['ATTRIBUTE_NODE', 'CDATA_SECTION_NODE', 'COMMENT_NODE', 'DOCUMENT_FRAGMENT_NODE', 'DOCUMENT_NODE', 'DOCUMENT_TYPE_NODE', 'ELEMENT_NODE', 'ENTITY_NODE', 'ENTITY_REFERENCE_NODE', 'NOTATION_NODE', 'PROCESSING_INSTRUCTION_NODE', 'TEXT_NODE', '__doc__', '__init__', '__module__', '__nonzero__', '__repr__', '_attrs', '_attrsNS', '_call_user_data_handler', '_child_node_types', '_get_attributes', '_get_childNodes', '_get_firstChild', '_get_lastChild', '_get_localName', '_get_tagName', '_magic_id_nodes', 'appendChild', 'attributes', 'childNodes', 'cloneNode', 'firstChild', 'getAttribute', 'getAttributeNS', 'getAttributeNode', 'getAttributeNodeNS', 'getElementsByTagName', 'getElementsByTagNameNS', 'getInterface', 'getUserData', 'hasAttribute', 'hasAttributeNS', 'hasAttributes', 'hasChildNodes', 'insertBefore', 'isSameNode', 'isSupported', 'lastChild', 'localName', 'namespaceURI', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue', 'normalize', 'ownerDocument', 'parentNode', 'prefix', 'previousSibling', 'removeAttribute', 'removeAttributeNS', 'removeAttributeNode', 'removeAttributeNodeNS', 'removeChild', 'replaceChild', 'schemaType', 'setAttribute', 'setAttributeNS', 'setAttributeNode', 'setAttributeNodeNS', 'setIdAttribute', 'setIdAttributeNS', 'setIdAttributeNode', 'setUserData', 'tagName', 'toprettyxml', 'toxml', 'unlink', 'writexml']

None
1 None link
link
[]
None None

http://www.w3.org/1999/xhtml

--------------------
link
============================================================
[, , ]

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-60490-1-1.html 上篇帖子: Python内置函数super的不便之处 下篇帖子: python的接口和抽象类
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表