本文以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否