标签:python performance xml large-files expat-parser
我有一个目录已满(~103,104)的XML文件,我需要从中提取几个字段的内容.
我已经测试了不同的xml解析器,因为我不需要验证内容(昂贵)我只想使用xml.parsers.expat(最快的一个)遍历文件,逐个提取数据.
>有更有效的方法吗? (简单文本匹配不起作用)
>我是否需要为每个新文件(或字符串)发出新的ParserCreate(),还是可以为每个文件重复使用相同的文件?
>有什么警告吗?
谢谢!
解决方法:
最快的方法是匹配字符串(例如,使用正则表达式)而不是解析XML – 这取决于您实际可以工作的XML.
但最重要的是:不要考虑几个选项,只需实现它们并在一小组上计时.这将花费大致相同的时间,并且会给你真实的数字确实会推动你前进.
编辑:
>文件是本地驱动器还是网络驱动器?网络I / O会在这里杀了你.
>问题并行化 – 您可以在多台计算机(或多核计算机上的多个进程)之间拆分工作.
标签:python,performance,xml,large-files,expat-parser 来源: https://codeday.me/bug/20190724/1520585.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。