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爬虫利用cookie实现模拟登陆实例详解
Jan 12 Python
python实现自动发送报警监控邮件
Jun 21 Python
解决安装python库时windows error5 报错的问题
Oct 21 Python
详解Python网络框架Django和Scrapy安装指南
Apr 01 Python
django Admin文档生成器使用详解
Jul 22 Python
Python Gitlab Api 使用方法
Aug 28 Python
Python requests设置代理的方法步骤
Feb 23 Python
Python解释器及PyCharm工具安装过程
Feb 26 Python
详解Python中import机制
Sep 11 Python
Pycharm编辑器功能之代码折叠效果的实现代码
Oct 15 Python
python opencv实现图像配准与比较
Feb 09 Python
python中最小二乘法详细讲解
Feb 19 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中计算时间差的几种方法
2009/12/31 PHP
关于PHP语言构造器介绍
2013/07/08 PHP
php中并发读写文件冲突的解决方案
2013/10/25 PHP
php计算整个目录大小的方法
2015/06/01 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
使用jQuery+HttpHandler+xml模拟一个三级联动的例子
2011/08/09 Javascript
ASP.NET jQuery 实例8 (动态添加内容到DropDownList)
2012/02/03 Javascript
js 获取浏览器版本以此来调整CSS的样式
2014/06/03 Javascript
jQuery搜索同辈元素方法
2015/02/10 Javascript
总结在前端排序中遇到的问题
2016/07/19 Javascript
Bootstrap实现的经典栅格布局效果实例【附demo源码】
2017/03/30 Javascript
SVG实现时钟效果
2018/07/17 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
vue-cli的工程模板与构建工具详解
2018/09/27 Javascript
玩转Koa之核心原理分析
2018/12/29 Javascript
Vue 使用计时器实现跑马灯效果的实例代码
2019/07/11 Javascript
Vue-cli3项目引入Typescript的实现方法
2019/10/18 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
Openlayers实现地图全屏显示
2020/09/28 Javascript
[51:22]Fnatic vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python实现二维有序数组查找的方法
2016/04/27 Python
Python2.7 实现引入自己写的类方法
2018/04/29 Python
不知道这5种下划线的含义,你就不算真的会Python!
2018/10/09 Python
PyTorch中Tensor的拼接与拆分的实现
2019/08/18 Python
Python logging日志模块 配置文件方式
2020/07/12 Python
利用python+ffmpeg合并B站视频及格式转换的实例代码
2020/11/24 Python
英国骑行、跑步、游泳、铁人三项运动装备专卖店:Wiggle
2016/08/23 全球购物
MADE荷兰:提供原创设计师家具
2018/04/03 全球购物
美国正版电视节目和电影在线观看:Hulu
2018/05/24 全球购物
美国中西部家用医疗设备商店:Med Mart(轮椅、踏板车、升降机等)
2019/04/26 全球购物
怎样在程序里获得一个空指针
2015/01/24 面试题
高中毕业的自我鉴定
2013/12/09 职场文书
春节活动策划方案
2014/01/24 职场文书
公司董事长助理工作职责
2014/07/12 职场文书
县级领导干部开展党的群众路线教育实践活动工作汇报
2014/10/25 职场文书
2015年语文教研组工作总结
2015/05/23 职场文书