簡體   English   中英

Python2.6 XML閱讀

[英]Python2.6 XML reading

我想將系統從Active Python 2.4遷移到Python 2.6.5。 但是,我在解析XML文件時遇到一些問題。 I / O非常慢。

我的樣本xml文件

<config><dicts><dictName>EnvDict</dictName><dictElems><key>AppServerIP</key>  <value>localhost</value><key>DBServerIP</key>   <value>localhost</value><key>DBServerName</key> <value>DB1</value></dictElems></dicts></config>

我的日志顯示此xml解析耗時25s。

我的系統結構如下

Publisher-Subr用於將請求重定向到不同的模塊

ClntMgrFact附加到PubSubr,並偵聽預定義的端口。 它將產生一個新的從客戶端登錄的過程。

ClntMgr(process)由ClntMgrFact生成,並且也附加到PubSubr。 ClntMgr將生成一個ClntWorker(thread)來處理工作流。

ClntWorker需要從本地讀取一些靜態XML文件 但是解析非常慢。 我的XML文件大約是500-700k。

任何人都可以在不更改系統結構的情況下提供幫助嗎? 提前致謝。

困惑...:

$ py26 -mtimeit -s'import rex' 'rex.t()'
10000 loops, best of 3: 103 usec per loop

100微秒似乎比25秒更合理的方式來讀取和解析您所提供的小XML文件(即使在我用於計時的舊筆記本電腦上也是如此!),但是如何解釋我解析速度比您快25萬倍嗎?

這是rex.py ,順便說rex.py ...:

import xml.etree.cElementTree as et

def t(fn='static.xml'):
  return et.parse(fn)

static.xml是我編寫XML示例的文件(223個字符)。

那么您的平台,操作系統,Python版本,選擇的XML解析器等是什么? 我使用的是Macbook Pro筆記本電腦,OSX 10.5.8、2.4 GHz Intel Core Duo,667 MHz DDR2 RAM-正如我所說,確實是一台相當老的機器! -直接來自python.org的Python 2.6.4。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM