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脚本实现统计日志文件中的ip访问次数代码分享
Aug 06 Python
在Python中操作日期和时间之gmtime()方法的使用
May 22 Python
Python使用BeautifulSoup库解析HTML基本使用教程
Mar 31 Python
python递归查询菜单并转换成json实例
Mar 27 Python
基于Python的关键字监控及告警
Jul 06 Python
解决pyecharts在jupyter notebook中使用报错问题
Apr 23 Python
简单介绍python封装的基本知识
Aug 10 Python
pytorch numpy list类型之间的相互转换实例
Aug 18 Python
Django app配置多个数据库代码实例
Dec 17 Python
使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例
Mar 16 Python
python统计mysql数据量变化并调用接口告警的示例代码
Sep 21 Python
浅谈Python基础之列表那些事儿
May 11 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
mysql总结之explain
2012/02/27 PHP
微信公众平台开发(五) 天气预报功能开发
2016/12/03 PHP
thinkphp5.1框架实现格式化mysql时间戳为日期的方式小结
2019/10/10 PHP
jQuery常见开发技巧详细整理
2013/01/02 Javascript
jQuery拖拽div实现思路
2014/02/19 Javascript
在JavaScript中使用JSON数据
2016/02/15 Javascript
JavaScript实现带播放列表的音乐播放器实例分享
2016/03/07 Javascript
基于JS实现发送短信验证码后的倒计时功能(无视页面刷新,页面关闭不进行倒计时功能)
2016/09/02 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
javascript实现文本框标签验证的实例代码
2018/10/14 Javascript
9102了,你还不会移动端真机调试吗
2019/03/25 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
详解element-ui动态限定的日期范围选择器代码片段
2020/07/03 Javascript
prettier自动格式化去换行的实现代码
2020/08/25 Javascript
ES11新增的这9个新特性,你都掌握了吗
2020/10/15 Javascript
python将图片文件转换成base64编码的方法
2015/03/14 Python
python中while循环语句用法简单实例
2015/05/07 Python
python实现井字棋游戏
2020/03/30 Python
python3中os.path模块下常用的用法总结【推荐】
2018/09/16 Python
python+splinter自动刷新抢票功能
2018/09/25 Python
使用python实现简单五子棋游戏
2019/06/18 Python
python字符串中匹配数字的正则表达式
2019/07/03 Python
python实现对图片进行旋转,放缩,裁剪的功能
2019/08/07 Python
Pytorch 实现计算分类器准确率(总分类及子分类)
2020/01/18 Python
Python HTMLTestRunner如何下载生成报告
2020/09/04 Python
判断单链表中是否存在环
2012/07/16 面试题
人力资源管理专业自荐书范文
2014/02/10 职场文书
手机银行营销方案
2014/03/14 职场文书
伦敦奥运会的口号
2014/06/21 职场文书
建筑专业毕业生求职信
2014/09/30 职场文书
司机岗位职责
2015/02/04 职场文书
2016大学生毕业实习心得体会
2016/01/23 职场文书
你会写报告?产品体验报告到底该怎么写?
2019/08/14 职场文书
完美处理python与anaconda环境变量的冲突问题
2021/04/07 Python
React forwardRef的使用方法及注意点
2021/06/13 Javascript
详解Vue的列表渲染
2021/11/20 Vue.js