python中按行处理xml文件

本文介绍了如何在Python中利用xml.sax.handler模块,逐行处理大型XML文件,以避免一次性加载整个文件导致的内存问题。通过创建自定义的事件处理器,可以有效地分析XML数据并进行特定操作。
摘要由CSDN通过智能技术生成
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import xml.sax.handler

class gErrorHandler(xml.sax.handler.ErrorHandler):
    def error(exception,e):
    def fatalError(exception,e):
    def warning(exception,e):

class gContentHandler(xml.sax.handler.ContentHandler):
    def __init__(self):
    def startDocument(self):
    def endDocument(self):
    def startElement(self, name, attrs):
    def characters(self, data):
    def endElement(self, name):

def xmlParser():
    parser=xml.sax.make_parser()
    errorHandler = gErrorHandler()
    contentHandler = gContentHandler()
    parser.setErrorHandler(errorHandler)
    parser.setContentHandler(contentHandler)
    try:
        parser.parse("...URL...")
    except Exception,e:
        print e

if ( __name__ == "__main__"):
    xmlParser()

注:  
    ErrorHandler同样是按行判断文件是否异常, 并不能在解码之前直接检测文件中是否有标签异常等, 所以
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值