python操作xml文件示例


Posted in Python onApril 07, 2014
def get_seed_data(filename):
dom = minidom.parse(filename)
root = dom.documentElement
system_nodes = root.getElementsByTagName("system")
k = 0
seed_list = []
for system_node in system_nodes:
    #print system_node.nodeName+' id='+system_node.getAttribute('id')
    system_id = system_node.getAttribute("id")
    system_name = system_node.getAttribute("name")
    #print 'system_name:%s'%system_name
    section_nodes = system_node.getElementsByTagName("section")
    for section_node in section_nodes:
            section_id = section_node.getAttribute('id')
            section_name = section_node.getAttribute('name')
            #print ' '+section_node.nodeName+' id='+section_id+' name='+section_name
            crawl_cycle_node = section_node.getElementsByTagName("crawl_cycle")
            crawl_cycle = crawl_cycle_node[0].childNodes[0].nodeValue
            #print '  '+crawl_cycle_node[0].nodeName+'='+crawl_cycle
            seed_nodes = section_node.getElementsByTagName('seed')
            for seed_node in seed_nodes:
                seed = {}
                seed['crawl_cycle'] = crawl_cycle
                seed['system_id'] = int(system_id)
                seed['system_name'] = system_name
                seed['section_id'] = int(section_id)
                seed['section_name'] = section_name
                seed_id = seed_node.getAttribute('id')
                seed['seed_id'] = int(seed_id)
                #print '  '+seed_node.nodeName+' '+'id='+seed_id
                userblog_url_node = seed_node.getElementsByTagName('userblog_url')
                userblog_url = userblog_url_node[0].childNodes[0].nodeValue
                seed['userblog_url'] = userblog_url
                #print '   '+'userblog_url'+' '+userblog_url
                print '-------------------------------------------'
                print 'system_id:%d' % seed['system_id']
                print 'system_name:%s'%seed['system_name']
                print ' section_id:%d' % seed['section_id']
                print ' section_name:%s' % seed['section_name']
                print '  seed_id:%d' %seed['seed_id']
                print '  userblog_url:%s' %seed['userblog_url']
                print '========================='
                seed_list.append(seed)
                print seed_list[k]
                k += 1
                os.system('pause')
return seed_list
<?xml version="1.0" encoding="utf-8" ?>
<seeds>
 <system id="1" name="新浪">
  <section id="1" name="娱乐">
   <crawl_cycle> </crawl_cycle>
   <seed id="1">
    <userblog_url>http://aaa.com.cn/loveissuuny</userblog_url>
   </seed>
   <seed id="2">
    <userblog_url>http://aaa.com.cn/loveissuuny</userblog_url>
   </seed>
   <seed id="3">
    <userblog_url>http://aaa.com.cn/sanxiazaixian</userblog_url>
   </seed>
  </section>
  <section id="2" name="读书">
   <crawl_cycle> </crawl_cycle>
   <seed id="11">
    <userblog_url>http://aaa.com.cn/twocold</userblog_url>
   </seed>
   <seed id="12">
    <userblog_url>http://aaa.com.cn/u/1233526741</userblog_url>
   </seed>
  </section>
 </system>
</seeds>
Python 相关文章推荐
Python中的rfind()方法使用详解
May 19 Python
详解Python的collections模块中的deque双端队列结构
Jul 07 Python
python的构建工具setup.py的方法使用示例
Oct 23 Python
为什么入门大数据选择Python而不是Java?
Mar 07 Python
Python中defaultdict与lambda表达式用法实例小结
Apr 09 Python
Python 批量合并多个txt文件的实例讲解
May 08 Python
python3实现zabbix告警推送钉钉的示例
Feb 20 Python
深入解析Python小白学习【操作列表】
Mar 23 Python
Python基本数据结构与用法详解【列表、元组、集合、字典】
Mar 23 Python
使用turtle绘制五角星、分形树
Oct 06 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
Feb 13 Python
Python使用pycharm导入pymysql教程
Sep 16 Python
python生成随机验证码(中文验证码)示例
Apr 03 #Python
python读取html中指定元素生成excle文件示例
Apr 03 #Python
python实现zencart产品数据导入到magento(python导入数据)
Apr 03 #Python
python模拟登陆阿里妈妈生成商品推广链接
Apr 03 #Python
python多线程抓取天涯帖子内容示例
Apr 03 #Python
python局域网ip扫描示例分享
Apr 03 #Python
python实现数通设备tftp备份配置文件示例
Apr 02 #Python
You might like
PHP 批量删除 sql语句
2009/06/05 PHP
php之curl设置超时实例
2014/11/03 PHP
JQuery 学习笔记 选择器之五
2009/07/23 Javascript
非常好用的JsonToString 方法 简单实例
2013/07/18 Javascript
js jquery ajax的几种用法总结(及优缺点介绍)
2014/01/28 Javascript
javascript匿名函数应用示例介绍
2014/03/07 Javascript
排序算法的javascript实现与讲解(99js手记)
2014/09/28 Javascript
JavaScript对象属性检查、增加、删除、访问操作实例
2015/07/08 Javascript
javascript检测flash插件是否被禁用的方法
2016/01/14 Javascript
jQuery设置Cookie及删除Cookie实例分析
2016/04/15 Javascript
zepto与jquery的区别及zepto的不同使用8条小结
2016/07/28 Javascript
原生js实现放大镜特效
2017/03/08 Javascript
Vue实现简易翻页效果源码分享
2018/11/08 Javascript
微信小程序搜索功能(附:小程序前端+PHP后端)
2019/02/28 Javascript
在Vue中使用icon 字体图标的方法
2019/06/14 Javascript
在 Django/Flask 开发服务器上使用 HTTPS
2014/07/03 Python
Python中遇到的小问题及解决方法汇总
2017/01/11 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
Python中str.join()简单用法示例
2018/03/20 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
2018/08/05 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
2018/12/28 Python
Python字典生成式、集合生成式、生成器用法实例分析
2020/01/07 Python
Python动态强类型解释型语言原理解析
2020/03/25 Python
jupyter notebook中新建cell的方法与快捷键操作
2020/04/22 Python
CSS3制作皮卡丘动画壁纸的示例
2020/11/02 HTML / CSS
加拿大著名时装品牌:SOIA & KYO
2016/08/23 全球购物
财务主管岗位职责
2014/02/28 职场文书
公司应聘求职信
2014/06/21 职场文书
乡党政领导班子群众路线教育实践活动个人对照检查材料
2014/09/20 职场文书
培训通知
2015/04/17 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书
经典人生语录分享:不畏将来,不念过去,笑对当下
2019/12/12 职场文书
HTML+CSS+JS实现图片的瀑布流布局的示例代码
2021/04/22 HTML / CSS
铁头也玩根德 YachtBoy YB-230......
2022/04/05 无线电
vue项目打包后路由错误的解决方法
2022/04/13 Vue.js
css之clearfix的用法深入理解(必看篇)
2023/05/21 HTML / CSS