用 Python 查看微信共同好友,嘿嘿
今天给大家分享个用 Python 查看微信共同好友的技巧。
总有思路清奇的朋友存在,想实现查看微信共同好友:
由于之前分享的代码有获取过微信好友头像,所以当时第一反应是通过itchat微信接口获取好友信息,比对两个人的好友信息列表就可以实现了。按理说这么简单的话,应该早有现成的代码了,然而并没有搜到,那正好,拿来练练手!
先放最终结果图:
思路
首先通过itchat这个微信个人号接口扫码登录个人微信网页版,获取可以识别好友身份的数据。这里是需要分别登录两人微信的,拿到两人各自的好友信息存到列表中。
这样一来,查共同好友就转化成了查两个列表中相同元素的问题。获取到共同好友信息后,可以通过命令行窗口print出来,也可以写入txt文件。
itchat
tchat是一个开源的微信个人号接口,使用python调用微信从未如此简单——其开发文档 https://itchat.readthedocs.io/zh/latest/#itchat
首先是安装itchat模块,例如:pip install itchat
安装完成在代码中通过 import itchat 导入,之后直接调用
#获取登录二维码,扫码登录微信网页版
itchat.auto_login()
#获取好友信息列表
friendList = itchat.get_friends(update=True)
通过以上两行,就可以拿到好友数据信息了,之后再从中筛选有用的信息进行处理即可。这里有一处感觉特别酷,就是通过enableCmdQR参数在命令行中展示二维码:
#在命令行生成登录二维码
itchat.auto_login(enableCmdQR=True)
好友信息处理
拿到的好友信息是什么样的呢?其实特别有用的并不多,你的微信号和联系方式是拿不到的。
而这里的UserName,同一个你在不同的微信号中UserName并不相同。所以,在并没有一个可以特定区分好友的情况下,我们选择获取多组信息来组合拼凑成一个整体,这里我选择了以下数据组成一个字典dict:
{"City":"","PYQuanPin":"","Province":"","PYInitial":"","Sex":0,'Signature':"",'Signature':"",'NickName':""}
通过以上一个字典八组数据来代表每一位独立好友信息。接下来在要比较的两组好友信息列表中,进行查重,这里我采用了最笨的遍历方法:
for i in contactlist:
if i in contactlist2:
if i not in[contactlist[0],contactlist2[0],empty,emptyM,emptyF]:
common_list.append(i)
count += 1
记录信息
由于一些特殊字符因为编码问题无法写入txt文档,我选择既写入txt又同时print出来相结合的方式:
with open("record.txt","w") as f:
print(f"你们共有{count}位共同好友(若除性别外其它信息为空,不在此记录),他们分别是:")
f.write(f"你们共有{count}位共同好友,他们分别是:
")
for i in display:
print(i)
try:
f.write(i+"
")
except:
f.write("该好友信息中含有字符无法识别,请在窗口中查看
")
回顾
整个流程下来,涉及到的就是itchat接口的使用、将信息赋值给list、获取两个list公共元素、将信息写入txt文件这四部分。
除了itchat接口获取好友数据看着复杂外,别的都是基础语法。而itchat相关的代码就几行,所以你说,python是不是贼好用?
代码下载
除了代码外,这里我也将py文件封装成了exe文件来直接下载,这样即使电脑没装python或者你不用python也可以拿来玩了
后台回复 共同好友 获取代码和程序下载链接~
用 Python 查看微信共同好友,嘿嘿相关推荐
- Python 查看微信共同好友
Python 查看微信共同好友 思路 itchat 好友信息处理 记录信息 回顾 代码下载 总有思路清奇的朋友存在,想实现查看微信共同好友: 由于之前分享的代码有获取过微信好友头像,所以当时第一反应是 ...
- python怎么使用别人的代码_利用Python查看微信共同好友功能的实现代码
总有思路清奇的朋友存在,想实现查看微信共同好友: 由于之前分享的代码有获取过微信好友头像,所以当时第一反应是通过itchat微信接口获取好友信息,比对两个人的好友信息列表就可以实现了.按理说这么简单的 ...
- 骚操作!Python查看微信共同好友
点击上方"涛哥聊Python",选择"星标"公众号 重磅干货,第一时间送达 来源:TEDxPY 总有思路清奇的朋友存在,想实现查看微信共同好友: 由于之前分享的 ...
- Python查看微信共同好友
总有思路清奇的朋友存在,想实现查看微信共同好友: 由于之前分享的代码有获取过微信好友头像,所以当时第一反应是通过itchat微信接口获取好友信息,比对两个人的好友信息列表就可以实现了.按理说这么简单的 ...
- 用Python查看微信共同好友
Illustrations by Dan Gartman ♚ TED,工作中开始因为自学python开始热爱编程,希望结交更多热爱python 的朋友 博客:https://blogs.csdn.ne ...
- 利用Python查看微信共同好友
思路 首先通过itchat这个微信个人号接口扫码登录个人微信网页版,获取可以识别好友身份的数据.这里是需要分别登录两人微信的,拿到两人各自的好友信息存到列表中. 这样一来,查共同好友就转化成了查两个列 ...
- 利用Python查看微信好友撤回的消息
效果图如下: 不仅可以查看微信好友撤回的文字消息,如位置.视频.音频.图片等等都可以查看. 直接上源代码: # Python查看微信撤回消息 import re import os import ti ...
- python pc微信 接收信息_GitHub - ericadver/WechatPCAPI: 微信PC版的API接口,可通过Python调用微信获取好友、群、公众号列表,并收发消息等功能。...
WechatPCAPI 微信PC版的API接口,可通过Python调用微信获取好友.群.公众号列表,并收发消息等功能.可用于二次开发在线微信机器人.微信消息监控.群控软件.开发界面作多个微信控制软件等 ...
- python 微信公众号网页接口调用_GitHub - micsem00/WechatPCAPI: 微信PC版的API接口,可通过Python调用微信获取好友、群、公众号列表,并收发消息等功能。...
WechatPCAPI 微信PC版的API接口,可通过Python调用微信获取好友.群.公众号列表,并收发消息等功能.可用于二次开发在线微信机器人.微信消息监控.群控软件.开发界面作多个微信控制软件等 ...
最新文章
- JavaWeb学习笔记(十)--HttpServletRequest
- 【Java 线程的深入研究3】最简单实例说明wait、notify、notifyAll的使用方法
- Spanner——Google的全球化分布式数据库
- 吴恩达机器学习笔记:(五)区别于微积分的正规方程求解最优解
- eureka 集群失败的原因_eureka集群中的疑问?
- springboot springmvc mybatis_12道重点的Spring Boot面试题,帮你整理好了!
- 牛客网--字符串合并处理(Java)
- jetty优秀文章转载
- Spring:笔记整理(1)——HelloWorld
- 《深入浅出统计学》读书笔记
- 九款Web服务器性能压力测试工具
- java fly bird小游戏_实战|JavaScript实现Fly Bird小游戏-【安基网】
- SQLSERVER读懂语句运行的统计信息
- 《冬月集:自渡》 一个会写诗的程序员
- 基于Vue实现动态组织结构图
- 听课记录高中计算机,中学信息技术听课记录
- 人文讲座之《阳明心学与今日中国》
- chrome driver 环境问题
- 关于彭先生和我的未来呀~
- 《寄居者》 - 严歌苓
热门文章
- 欺骗的艺术——第二部分(5)
- lora 网关 linux,基于Semtech SX127X之LoRaWAN 单通道网关方案
- Flutter开发准备工作dart语言
- Pandas数据结构分析
- 郑州职业技术学院计算机宿舍,郑州职业技术学院宿舍条件、住宿好吗、寝室情况...
- 私有云 mysql php代码_Centos7下nginx+owncloud+php+mysql搭建个人私有云
- word内容替换软件(已构建exe,可一键执行)
- 博弈---ZOJ 2083 Win the Game(染绳子)
- linux下不错的下载软件——proz
- Coding Pages 搭建静态网站