背景
在搬磚過程中,某些場景下,需要将資訊導出為xml格式檔案,在檢測檔案過大時候轉化效率特别慢的情況
原本轉化流程如下圖
start=>start
threaten=>operation: dicttoxml()
beautify=>operation: ElementTree prettyXml
writer=>operation: writer xmlFile
end=>end
start->threaten->beautify->writer->end
- 将美化xml過程融合到轉化過程中
- 加入支援最大層級配置,超出該層級的dict将被轉化為string用一個标簽封裝起來
# 假設dicttoxml.py放入項目下utils包中
from utils.dicttoxml import dicttoxml
# query_info()擷取dict資料方法,替換為自己的擷取資料方法
data = query_info()
# 傳入dicttoxml方法中,max_lev配置為7則說明dict最大層級支援到7級,若需要全部轉化,max_lev參數不要傳遞即可
xml = dicttoxml(data, max_lev=7)
# 寫入xml檔案
with open(os.path.join(filepath, filename), "wb") as fp:
fp.write(xml)
- From: xaohuihui
- 手搓不易,記得star哦