python 列表转字典
- def func_data(text):
- data = dict()
- for kv in text.split(','):
- k_v = kv.split(':')
- data[k_v[0]] = k_v[1]
- return data
- import json
- import xml.etree.cElementTree as ET
- from urllib.parse import urlparse
- >>> a = '{"msg_content": {"msg_type": "wechat_msg", "data": "{\\"msgId\\":829,\\"content\\":\\"<msg>\\\\n<appmsg appid=\\\\\\"\\\\\\" sdkver=\\\\\\"\\\\\\">\\\\n<des><![CDATA[\\u6211\\u7ed9\\u4f60\\u53d1\\u4e86\\u4e00\\u4e2a\\u7ea2\\u5305\\uff0c\\u8d76\\u7d27\\u53bb\\u62c6!]]><\\\\/des>\\\\n<url><![CDATA[https:\\\\/\\\\/wxapp.tenpay.com\\\\/mmpayhb\\\\/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\\\/url>\\\\n<type><![CDATA[2001]]><\\\\/type>\\\\n<title><![CDATA[\\u5fae\\u4fe1\\u7ea2\\u5305]]><\\\\/title>\\\\n<thumburl><![CDATA[http:\\\\/\\\\/wx.gtimg.com\\\\/hongbao\\\\/1701\\\\/hb.png]]><\\\\/thumburl>\\\\n\\\\n<wcpayinfo>\\\\n<templateid><![CDATA[7a2a165d31da7fce6dd77e05c300028a]]><\\\\/templateid>\\\\n<url><![CDATA[https:\\\\/\\\\/wxapp.tenpay.com\\\\/mmpayhb\\\\/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\\\/url>\\\\n<iconurl><![CDATA[http:\\\\/\\\\/wx.gtimg.com\\\\/hongbao\\\\/1701\\\\/hb.png]]><\\\\/iconurl>\\\\n<receivertitle><![CDATA[Best wishes]]><\\\\/receivertitle>\\\\n<sendertitle><![CDATA[Best wishes]]><\\\\/sendertitle>\\\\n<scenetext><![CDATA[\\u5fae\\u4fe1\\u7ea2\\u5305]]><\\\\/scenetext>\\\\n<senderdes><![CDATA[\\u67e5\\u770b\\u7ea2\\u5305]]><\\\\/senderdes>\\\\n<receiverdes><![CDATA[\\u9886\\u53d6\\u7ea2\\u5305]]><\\\\/receiverdes>\\\\n<nativeurl><![CDATA[wxpay:\\\\/\\\\/c2cbizmessagehandler\\\\/hongbao\\\\/receivehongbao?msgtype=1&channelid=1&sendid=1000039501201705266007246104036&sendusername=wxid_ar4tit68b6fa22&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\\\/nativeurl>\\\\n<sceneid><![CDATA[1002]]><\\\\/sceneid>\\\\n<innertype><![CDATA[0]]><\\\\/innertype>\\\\n\\\\n\\\\n\\\\n<scenetext>\\u5fae\\u4fe1\\u7ea2\\u5305<\\\\/scenetext>\\\\n\\\\n\\\\n\\\\n\\\\n<\\\\/wcpayinfo>\\\\n<\\\\/appmsg>\\\\n<fromusername><![CDATA[wxid_ar4tit68b6fa22]]><\\\\/fromusername>\\\\n<\\\\/msg>\\",\\"createTime\\":1495763217000,\\"msgSvrId\\":6367525297935218796,\\"time\\":1495763221114,\\"isSend\\":0,\\"wxid\\":\\"wxid_ar4tit68b6fa22\\"}", "mid": 1495763221157}, "device_id": "993654e2"}'
- >>> b = json.loads(a)
- >>> b
- {'msg_content': {'msg_type': 'wechat_msg', 'data': '{"msgId":829,"content":"<msg>\\n<appmsg appid=\\"\\" sdkver=\\"\\">\\n<des><![CDATA[我给你发了一个红包,赶紧去拆!]]><\\/des>\\n<url><![CDATA[https:\\/\\/wxapp.tenpay.com\\/mmpayhb\\/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\/url>\\n<type><![CDATA[2001]]><\\/type>\\n<title><![CDATA[微信红包]]><\\/title>\\n<thumburl><![CDATA[http:\\/\\/wx.gtimg.com\\/hongbao\\/1701\\/hb.png]]><\\/thumburl>\\n\\n<wcpayinfo>\\n<templateid><![CDATA[7a2a165d31da7fce6dd77e05c300028a]]><\\/templateid>\\n<url><![CDATA[https:\\/\\/wxapp.tenpay.com\\/mmpayhb\\/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\/url>\\n<iconurl><![CDATA[http:\\/\\/wx.gtimg.com\\/hongbao\\/1701\\/hb.png]]><\\/iconurl>\\n<receivertitle><![CDATA[Best wishes]]><\\/receivertitle>\\n<sendertitle><![CDATA[Best wishes]]><\\/sendertitle>\\n<scenetext><![CDATA[微信红包]]><\\/scenetext>\\n<senderdes><![CDATA[查看红包]]><\\/senderdes>\\n<receiverdes><![CDATA[领取红包]]><\\/receiverdes>\\n<nativeurl><![CDATA[wxpay:\\/\\/c2cbizmessagehandler\\/hongbao\\/receivehongbao?msgtype=1&channelid=1&sendid=1000039501201705266007246104036&sendusername=wxid_ar4tit68b6fa22&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\/nativeurl>\\n<sceneid><![CDATA[1002]]><\\/sceneid>\\n<innertype><![CDATA[0]]><\\/innertype>\\n\\n\\n\\n<scenetext>微信红包<\\/scenetext>\\n\\n\\n\\n\\n<\\/wcpayinfo>\\n<\\/appmsg>\\n<fromusername><![CDATA[wxid_ar4tit68b6fa22]]><\\/fromusername>\\n<\\/msg>","createTime":1495763217000,"msgSvrId":6367525297935218796,"time":1495763221114,"isSend":0,"wxid":"wxid_ar4tit68b6fa22"}', 'mid': 1495763221157}, 'device_id': '993654e2'}
- >>> data = b.get('msg_content').get('data')
- >>> data
- '{"msgId":829,"content":"<msg>\\n<appmsg appid=\\"\\" sdkver=\\"\\">\\n<des><![CDATA[我给你发了一个红包,赶紧去拆!]]><\\/des>\\n<url><![CDATA[https:\\/\\/wxapp.tenpay.com\\/mmpayhb\\/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\/url>\\n<type><![CDATA[2001]]><\\/type>\\n<title><![CDATA[微信红包]]><\\/title>\\n<thumburl><![CDATA[http:\\/\\/wx.gtimg.com\\/hongbao\\/1701\\/hb.png]]><\\/thumburl>\\n\\n<wcpayinfo>\\n<templateid><![CDATA[7a2a165d31da7fce6dd77e05c300028a]]><\\/templateid>\\n<url><![CDATA[https:\\/\\/wxapp.tenpay.com\\/mmpayhb\\/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\/url>\\n<iconurl><![CDATA[http:\\/\\/wx.gtimg.com\\/hongbao\\/1701\\/hb.png]]><\\/iconurl>\\n<receivertitle><![CDATA[Best wishes]]><\\/receivertitle>\\n<sendertitle><![CDATA[Best wishes]]><\\/sendertitle>\\n<scenetext><![CDATA[微信红包]]><\\/scenetext>\\n<senderdes><![CDATA[查看红包]]><\\/senderdes>\\n<receiverdes><![CDATA[领取红包]]><\\/receiverdes>\\n<nativeurl><![CDATA[wxpay:\\/\\/c2cbizmessagehandler\\/hongbao\\/receivehongbao?msgtype=1&channelid=1&sendid=1000039501201705266007246104036&sendusername=wxid_ar4tit68b6fa22&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]><\\/nativeurl>\\n<sceneid><![CDATA[1002]]><\\/sceneid>\\n<innertype><![CDATA[0]]><\\/innertype>\\n\\n\\n\\n<scenetext>微信红包<\\/scenetext>\\n\\n\\n\\n\\n<\\/wcpayinfo>\\n<\\/appmsg>\\n<fromusername><![CDATA[wxid_ar4tit68b6fa22]]><\\/fromusername>\\n<\\/msg>","createTime":1495763217000,"msgSvrId":6367525297935218796,"time":1495763221114,"isSend":0,"wxid":"wxid_ar4tit68b6fa22"}'
- >>> _data = json.loads(data)
- >>> _data
- {'content': '<msg>\n<appmsg appid="" sdkver="">\n<des><![CDATA[我给你发了一个红包,赶紧去拆!]]></des>\n<url><![CDATA[https://wxapp.tenpay.com/mmpayhb/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]></url>\n<type><![CDATA[2001]]></type>\n<title><![CDATA[微信红包]]></title>\n<thumburl><![CDATA[http://wx.gtimg.com/hongbao/1701/hb.png]]></thumburl>\n\n<wcpayinfo>\n<templateid><![CDATA[7a2a165d31da7fce6dd77e05c300028a]]></templateid>\n<url><![CDATA[https://wxapp.tenpay.com/mmpayhb/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]></url>\n<iconurl><![CDATA[http://wx.gtimg.com/hongbao/1701/hb.png]]></iconurl>\n<receivertitle><![CDATA[Best wishes]]></receivertitle>\n<sendertitle><![CDATA[Best wishes]]></sendertitle>\n<scenetext><![CDATA[微信红包]]></scenetext>\n<senderdes><![CDATA[查看红包]]></senderdes>\n<receiverdes><![CDATA[领取红包]]></receiverdes>\n<nativeurl><![CDATA[wxpay://c2cbizmessagehandler/hongbao/receivehongbao?msgtype=1&channelid=1&sendid=1000039501201705266007246104036&sendusername=wxid_ar4tit68b6fa22&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be]]></nativeurl>\n<sceneid><![CDATA[1002]]></sceneid>\n<innertype><![CDATA[0]]></innertype>\n\n\n\n<scenetext>微信红包</scenetext>\n\n\n\n\n</wcpayinfo>\n</appmsg>\n<fromusername><![CDATA[wxid_ar4tit68b6fa22]]></fromusername>\n</msg>', 'isSend': 0, 'time': 1495763221114, 'wxid': 'wxid_ar4tit68b6fa22', 'msgSvrId': 6367525297935218796, 'createTime': 1495763217000, 'msgId': 829}
- >>> red_packet_content = _data.get('content')
- >>> red_packet_tree = ET.fromstring(red_packet_content.replace('\\/', '/'))
- >>> red_url = ''
- >>>
- >>> for sendertitle in red_packet_tree.iter(tag='sendertitle'):
- ... print(sendertitle.text)
- ... remarks = sendertitle.text
- ...
- Best wishes
- >>> for url in red_packet_tree.iter(tag='url'):
- ... red_url = url.text
- ...
- >>> for url in red_packet_tree.iter(tag='url'):
- ... red_url = url.text
- ... print(url.text)
- ...
- https://wxapp.tenpay.com/mmpayhb/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be
- https://wxapp.tenpay.com/mmpayhb/wxhb_personalreceive?showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be
- >>> from urllib.parse import urlparse
- >>>
- >>> _url_value = urlparse(red_url).query
>>> print(_url_value)
showwxpaytitle=1&msgtype=1&channelid=1&sendid=1000039501201705266007246104036&ver=6&sign=1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be- >>> url_value = (_url_value.replace('&', ',')).replace('=', ':')
- >>> print(url_value)
- showwxpaytitle:1,msgtype:1,channelid:1,sendid:1000039501201705266007246104036,ver:6,sign:1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be
- >>> def func_data(text):
- ... data = dict()
- ... for kv in text.split(','):
- ... k_v = kv.split(':')
- ... data[k_v[0]] = k_v[1]
- ... return data
- ...
- >>> sendid = func_data(url_value).get('sendid')
- >>> print(sendid)
- 1000039501201705266007246104036
- >>> sign = func_data(url_value).get('sign')
- >>> print(sign)
- 1e933b4942c56a30fb5f998283b953a421a8219ac9ccc6b3756095ce0a04c727208a41bf836a4ad7068c0777b02a0f4e76501369ae011652138910bbf6218fe947080afee1041c0d39641e779cd3f90dc2665a6ae496aedae1035ac18821d9be
- >>>
python 列表转字典的更多相关文章
- Python 列表生成式 & 字典生成式
Python 列表生成式 & 字典生成式 通过生成式可以更加简洁地生成列表和字典 列表生成式 对比 直接生成数据后加入列表示例: user_list = list() for i in ran ...
- Python列表,元组,字典,序列,引用
1.列表 # Filename: using_list.py # This is my shopping list shoplist=["apple", "mango&q ...
- python 列表,字典,元组,字符串,常用函数
飞机票 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中包含3个元组),相当于ls和object ...
- 【277】◀▶ Python 列表/元组/字典说明
目录: 前言 一.访问列表中的值 二.更新列表 三.删除列表元素 四.Python 列表脚本操作符 五.Python 列表函数 & 方法 参考:Python 列表(List)使用说明 列表截取 ...
- python列表和字典的迭代
1.列表和字典的迭代 程序开发中,对列表和字典进行迭代是非常常见的事情. 字典一般可以选择对key进行迭代.对value迭代和对key/value一起迭代 >>> d = {'a': ...
- Python 列表,元组,字典
0)字符串切片 py_str = 'python' >>>py_str[0] #取第一个字符串,返回值为"p",超出范围会报错 >>>py_st ...
- Python 列表/元组/字典总结
序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列 ...
- Python列表,元组,字典,字符串方法笔记
01. 列表 1.1 列表的定义 List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [] 定义,数据 之间使用 , 分隔 列 ...
- python 列表和字典的引用与复制(copy)
列表或字典的引用: 引用针对变量的时候,传递引用后,对引用后的对象的值进行改变是不会影响到原值的:而列表不一样如: spam =42 cheese = spam spam =100 print(spa ...
- python 列表转为字典的两个小方法
1.现在有两个列表,list1 = ['key1','key2','key3']和list2 = ['1','2','3'],把他们转为这样的字典:{'key1':'1','key2':'2','ke ...
随机推荐
- Linux 安装Xampp以后,Apache服务器无法启动,以及启动后,连接sql数据库遇到的问题的解决方法
xampp安装以后,搭建服务器的时候,我们会遇到哪些问题呢?1.MySQL Database 可以启动,而Apache Web Server无法启动?应该是80端口被占用,那么如何解决呢?我们可以通过 ...
- APP自识别安卓苹果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- KVO 模式详解
KVO:观察者模式.当指定的被观察对象属性被修改时,允许对象接收到通知的机制. p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; ...
- 浅析c++/java/c#三大热门编程语言的运行效率
从安全角度考虑,C#是这几中语言中最为安全的,它其中定义的相关安全机制很好的确保了系统的安全... 今天和同学们一起探讨下c++/java/c# 三大热门语言的运行效率情况,以及各自的用途. 估计有很 ...
- java获得路径的多种方式
本文讲解java语言中获得运行时路径的多种方式,包括java项目.java web项目.jar.weblogic等多种场景. 一.this.getClass().getClassLoader().ge ...
- eNSP自学入门(基础)
写了上篇博客之后,就立即投入到了eNSP的怀抱之中了,自己从零基础,入门到现在.也学了不少东西,在这里和大家分享一下. 说一下学习的过程吧,老师说做网络工程的课程设计用eNSP,关于这个软件什么都没有 ...
- ListView在异步加载动态图片时,往往最后一项或几项被遮盖(IM场景居多)
如果ListView中得默认图片比较小,新图片加载后,撑大ListView中的对应项,导致最后一项或几项被覆盖. 解决思路: 1.默认图片设定和新图大小一样,换句话说,新图加载后转成和默认图片一样的大 ...
- TreeSet小练习
package 练习.test1; import java.util.Iterator; import java.util.TreeSet; /* 需求:将字符串中的数值进行排序. 例如String ...
- JDK安装以及安装过程中出现的问题(日志二)
上一篇:初识hadoop-历史及其家族(日志一) 我安装的这个版本的Ubuntu,已经在java包中存在了,所以当使用java -version的时候,会出现下载包的提示,使用apt-get命令之后, ...
- LeetCode 题解(一):Two Sum
LeetCode : two sum 第一次写博客,算是熟悉这些编辑环境吧,本来是打算在csdn上用markdown写的,结果改了博客介绍就被关闭了,晕死...好了,话不多说,今天打算拿LeetCod ...