def trans_xml_to_dict(xml):
"""
将微信支付交互返回的 XML 格式数据转化为 Python Dict 对象 :param xml: 原始 XML 格式数据
:return: dict 对象
""" soup = BeautifulSoup(xml, features='xml')
xml = soup.find('xml')
if not xml:
return {} # 将 XML 数据转化为 Dict
data = dict([(item.name, item.text) for item in xml.find_all()])
return data def trans_dict_to_xml(data):
"""
将 dict 对象转换成微信支付交互所需的 XML 格式数据 :param data: dict 对象
:return: xml 格式数据
""" xml = []
for k in sorted(data.keys()):
v = data.get(k)
if k == 'detail' and not v.startswith('<![CDATA['):
v = '<![CDATA[{}]]>'.format(v)
xml.append('<{key}>{value}</{key}>'.format(key=k, value=v))
return '<xml>{}</xml>'.format(''.join(xml))

最新文章

  1. 【leedcode】 Longest Palindromic Substring
  2. Effective Java 62 Document all exceptions thrown by each method
  3. 如何在CentOS 7服务器上安装NodeJS
  4. vim 跳到指定行
  5. openlayers加载地图没有图片时有红叉的解决方法
  6. HDOJ/HDU 1256 画8(绞下思维~水题)
  7. TOJ1693(Silver Cow Party)
  8. [置顶] poj1416数字切割解题报告
  9. URI和URL
  10. C#设置程序自启动
  11. Day3:T3DP T4堆排序
  12. CodeForces 621C Wet Shark and Flowers
  13. CSS与HTML5响应式图片
  14. python 配置文件解析模块 configparser
  15. HotSpot虚拟机对象探秘(对象创建,对象内存布局,对象访问定位)
  16. 用PHP实现反向代理服务器
  17. tensorflow读取本地MNIST数据集
  18. oracle 导入DMP文件时IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件 IMP-00000: 未成功终止导入
  19. 地址重写 No input file specified的解决方法
  20. split应用

热门文章

  1. [codeforces] 527A Playing with Paper
  2. 插件安装:包管理器——Package Control
  3. bzoj3969 [WF2013]Low Power
  4. VC++中有关句柄和指针及其转换(转)
  5. picker(拖拽上下拉动的选项)
  6. windows 添加自助白名单
  7. 6.安装和配置OpenStack图片服务组件
  8. 【linux高级程序设计】(第十四章)TCP高级应用 2
  9. vim注释颜色更改
  10. .apache.commons.io 源代码学习(二)FilenameUtils类