您的位置:首页 > 编程语言 > Python开发

Python微信好友信息意义及取值分析(基于itchat)

2017-10-04 11:12 1106 查看
本文以
itchat
库为基础,提供了一些好友信息意义的分析。

itchat
提供了
get_friends(self, update=False)
方法用于获取微信好友列表,返回信息是一个用户信息字典的列表。

列表第一个元素为用户个人信息。

用户信息键值示例如下。

#内部用户名,@开头的是好友,@@开头的是群聊,itchat提供了 get_chatrooms()方法。每次登录都不一样。
UserName        @5dacffa4643a3afe8153b7390c23e
#昵称
NickName        海纳百川
PYQuanPin       hainabaichuan
PYInitial       HNBC
#备注
RemarkName      赵**
RemarkPYQuanPin         zhao*****
RemarkPYInitial         Z**
#签名
Signature       否极泰来,我等待阳光穿透乌云的那一天
Province        河南
City    南阳
Sex     2
HeadImgUrl      /cgi-bin/mmwebwx-bin/webwxgeticon?seq=643704252&username=@5dacff
a4643a3afe8153b7390c2&skey=@crypt_4d719671_
85b2fbc88ea625fc4a3f67c169944d1a

DisplayName
MemberList      []
Uin     0
AppAccountFlag  0
VerifyFlag      0
ChatRoomId      0
IsOwner         0
HideInputBarFlag        0
EncryChatRoomId
MemberCount     0
OwnerUin        0
Alias
Statues         0

AttrStatus      6245
ContactFlag     3
KeyWord
SnsFlag         1
StarFriend      0
UniFriend       0


ContactFlag为好友类型及权限:有资料说1为好友,但是通过分析我的好友发现,大部分为3,少部分为1。其他编码意义为:65标星好友,259不让他看我的朋友圈,65539不看他的朋友圈,65795两项设置全禁止

SnsFlag意义未知:目前见到的取值范围为
0、1、16、17、49、129、145、177
,我的好友这个值较多的为
17,1,49


AttrStatus 意义未知:看网上有人拿来用群用户的唯一标识,但是经过个人分析这个取值很多是重复的,而且跟群没什么联系。

UniFriend意义未知:个人好友值全为0

StarFriend标星好友:1是0否
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息