Python xmltodict模塊安裝及代碼實(shí)例
最近在對(duì)接微信公眾號(hào)、微信支付等功能,發(fā)現(xiàn)很多都是用xml格式的。在使用django日常處理的時(shí)候,都是手動(dòng)拼接的,真的是很惡心。今天仔細(xì)的看了一下python的xmltodict模塊,發(fā)現(xiàn)其實(shí)完全可以不用手動(dòng)拼接,輪子本身都有了。只要那來用就好了。之前自己的方式反而有點(diǎn)傻逼了。
首先使用和安裝都很簡(jiǎn)單
安裝
pip install xmltodict #如果安裝失敗,直接去github上下載手動(dòng)裝吧,https://github.com/martinblech/xmltodict
從名字就知道了 他是一個(gè)支持從xml轉(zhuǎn)換到python的dict互相轉(zhuǎn)換的模塊。(真的很方便)
dict轉(zhuǎn)換xml(用的比較多)
這個(gè)的使用場(chǎng)景是真的多,比如微信支付各種信息獲取都需要用到。
xmltodict.unparse()方法可以方便的將字典轉(zhuǎn)換為xml字符串。
import xmltodict
d = {
'xml':{
'a': '123',
'b': '234'
}
}
xml_tmp = xmltodict.unparse(d)
print(xml_tmp)
--><?xml version="1.0" encoding="utf-8"?><xml><a>123</a><b>234</b></xml>
看著上面的字典格式也有點(diǎn)奇怪,這里要說明一下,生成xml只能只有一個(gè)根,否則會(huì)報(bào)錯(cuò)ValueError: Document must have exactly one root.
解決方式也比較簡(jiǎn)單,只要將你需要的字典內(nèi)容在嵌套到一個(gè)xml的鍵里面,保證字典的第一層只有xml這個(gè)鍵即可。
xml轉(zhuǎn)換dict
這個(gè)方法用的不多,我目前主要是用在處理回調(diào)解析微信傳給我們的xml數(shù)據(jù)。
xmltodict.parse()將xml轉(zhuǎn)換為字典。
接著上面的例子,繼續(xù)往下吧。
import xmltodict
d = {
'xml':{
'a': '123',
'b': '234'
}
}
xml_tmp = xmltodict.unparse(d)
print(xml_tmp)
#將轉(zhuǎn)換的xml在轉(zhuǎn)換回字典
dt = xmltodict.parse(xml_tmp)
print(dt,type(dt))
--> OrderedDict([('xml', OrderedDict([('a', '123'), ('b', '234')]))]) <class 'collections.OrderedDict'>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)模擬瀏覽器請(qǐng)求及會(huì)話保持操作示例
這篇文章主要介紹了Python實(shí)現(xiàn)模擬瀏覽器請(qǐng)求及會(huì)話保持操作,結(jié)合實(shí)例形式分析了Python基于urllib與urllib2模塊模擬瀏覽器請(qǐng)求及cookie保存會(huì)話相關(guān)操作技巧,需要的朋友可以參考下2018-07-07
Keras保存模型并載入模型繼續(xù)訓(xùn)練的實(shí)現(xiàn)
這篇文章主要介紹了Keras保存模型并載入模型繼續(xù)訓(xùn)練的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
Python實(shí)現(xiàn)PC屏幕截圖并自動(dòng)發(fā)送郵件
在當(dāng)前的數(shù)字化世界中,自動(dòng)化已經(jīng)成為我們?nèi)粘I詈凸ぷ髦械年P(guān)鍵部分,本文我們將探討如何使用Python來實(shí)現(xiàn)一個(gè)特定的自動(dòng)化任務(wù) - PC屏幕截圖自動(dòng)發(fā)送到指定的郵箱,感興趣的可以了解下2023-11-11
python爬蟲中g(shù)et和post方法介紹以及cookie作用
本篇文章通過爬取163郵箱實(shí)例介紹了python爬蟲中g(shù)et和post方法介紹以及cookie作用,對(duì)此有興趣的朋友學(xué)習(xí)下。2018-02-02

