总有思路清奇的朋友存在,想实现查看微信共同好友:
先放最终结果图:
思路
这样一来,查共同好友就转化成了查两个列表中相同元素的问题。获取到共同好友信息后,可以通过命令行窗口print出来,也可以写入txt文件。
itchat
通过以上两行,就可以拿到好友数据信息了,之后再从中筛选有用的信息进行处理即可。这里有一处感觉特别酷,就是通过enableCmdQR参数在命令行中展示二维码:
#在命令行生成登录二维码
itchat.auto_login(enableCmdQR=True)
好友信息处理
拿到的好友信息是什么样的呢?其实特别有用的并不多,你的微信号和联系方式是拿不到的。
{"City":"","PYQuanPin":"","Province":"","PYInitial":"","Sex":,'Signature':"",'Signature':"",'NickName':""}
通过以上一个字典八组数据来代表每一位独立好友信息。接下来在要比较的两组好友信息列表中,进行查重,这里我采用了最笨的遍历方法:
foriincontactlist:
ifiincontactlist2:
ifinot in[contactlist[],contactlist2[],empty,emptyM,emptyF]:
common_list.append(i)
count +=1
记录信息
由于一些特殊字符因为编码问题无法写入txt文档,我选择既写入txt又同时print出来相结合的方式:
withopen("record.txt","w")asf:
print(f"你们共有{count}位共同好友(若除性别外其它信息为空,不在此记录),他们分别是:")
f.write(f"你们共有{count}位共同好友,他们分别是:\n")
foriindisplay:
print(i)
try:
f.write(i+"\n")
except:
f.write("该好友信息中含有字符无法识别,请在窗口中查看\n")
回顾
整个流程下来,涉及到的就是itchat接口的使用、将信息赋值给list、获取两个list公共元素、将信息写入txt文件这四部分。
除了itchat接口获取好友数据看着复杂外,别的都是基础语法。而itchat相关的代码就几行,所以你说,python是不是贼好用?
代码下载
除了代码外,这里我也将py文件封装成了exe文件来直接下载,这样即使电脑没装python或者你不用python也可以拿来玩了
领取专属 10元无门槛券
私享最新 技术干货