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 相关文章推荐
Python3实现连接SQLite数据库的方法
Aug 23 Python
python集合用法实例分析
May 30 Python
python3.6+django2.0开发一套学员管理系统
Mar 03 Python
基于python 爬虫爬到含空格的url的处理方法
May 11 Python
python利用thrift服务读取hbase数据的方法
Dec 27 Python
python获取交互式ssh shell的方法
Feb 14 Python
Python爬虫实现验证码登录代码实例
May 10 Python
python基于event实现线程间通信控制
Jan 13 Python
Python爬虫爬取杭州24时温度并展示操作示例
Mar 27 Python
深入分析python 排序
Aug 24 Python
python 利用panda 实现列联表(交叉表)
Feb 06 Python
使用numpy实现矩阵的翻转(flip)与旋转
Jun 03 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 cookie 作用范围?不要在当前页面使用你的cookie
2009/03/24 PHP
php 图片上添加透明度渐变的效果
2009/06/29 PHP
PHP使用SOAP扩展实现WebService的方法
2016/04/01 PHP
CI框架使用composer安装的依赖包步骤与方法分析
2016/11/21 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
CL vs ForZe BO5 第五场 2.13
2021/03/10 DOTA
HTML5之lang属性与dir属性的详解
2013/06/19 Javascript
JS文本框默认值处理详解
2013/07/10 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
详解AngularJS过滤器的使用
2016/03/11 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
JS清除字符串中重复值的实现方法
2016/08/03 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
JS对象深度克隆实例分析
2017/03/16 Javascript
JavaScript基于replace+正则实现ES6的字符串模版功能
2017/04/25 Javascript
js表单序列化判断空值的实例
2017/09/22 Javascript
vue.js模仿京东省市区三级联动的选择组件实例代码
2017/11/22 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
2018/05/25 Javascript
JavaScript 扩展运算符用法实例小结【基于ES6】
2019/06/17 Javascript
js实现轮播图效果 纯js实现图片自动切换
2020/08/09 Javascript
python字符串str和字节数组相互转化方法
2017/03/18 Python
python3调用百度翻译API实现实时翻译
2018/08/16 Python
解决python os.mkdir创建目录失败的问题
2018/10/16 Python
python实现控制COM口的示例
2019/07/03 Python
Django中的静态文件管理过程解析
2019/08/01 Python
Python中sys模块功能与用法实例详解
2020/02/26 Python
如何安装并在pycharm使用selenium的方法
2020/04/30 Python
python中setuptools的作用是什么
2020/06/19 Python
通过实例了解Python异常处理机制底层实现
2020/07/23 Python
详解淘宝H5 sign加密算法
2020/08/25 HTML / CSS
Amara美国站:英国高端家居礼品网站,世界各地的奢侈家具品牌
2017/07/26 全球购物
Bed Bath & Beyond加拿大官网:购买床上用品、浴巾、厨房电器等
2019/10/04 全球购物
2014年自我评价
2014/01/04 职场文书
2014年教师德育工作总结
2014/11/10 职场文书
《我的长生果》教学反思
2016/02/20 职场文书