利用Python查看微信共同好友功能的实现代码


Posted in Python onApril 24, 2019

总有思路清奇的朋友存在,想实现查看微信共同好友:

 利用Python查看微信共同好友功能的实现代码

由于之前分享的代码有获取过微信好友头像,所以当时第一反应是通过itchat微信接口获取好友信息,比对两个人的好友信息列表就可以实现了。按理说这么简单的话,应该早有现成的代码了,然而并没有搜到,那正好,拿来练练手!

先放最终结果图:

 利用Python查看微信共同好友功能的实现代码

思路

首先通过itchat这个微信个人号接口扫码登录个人微信网页版,获取可以识别好友身份的数据。这里是需要分别登录两人微信的,拿到两人各自的好友信息存到列表中。

这样一来,查共同好友就转化成了查两个列表中相同元素的问题。获取到共同好友信息后,可以通过命令行窗口print出来,也可以写入txt文件。

itchat

tchat是一个开源的微信个人号接口,使用python调用微信从未如此简单——其开发文档 https://itchat.readthedocs.io/zh/latest/#itchat

首先是安装itchat模块,例如:pip install itchat

安装完成在代码中通过 import itchat 导入,之后直接调用

 利用Python查看微信共同好友功能的实现代码

通过以上两行,就可以拿到好友数据信息了,之后再从中筛选有用的信息进行处理即可。这里有一处感觉特别酷,就是通过enableCmdQR参数在命令行中展示二维码:

利用Python查看微信共同好友功能的实现代码

利用Python查看微信共同好友功能的实现代码

好友信息处理

拿到的好友信息是什么样的呢?其实特别有用的并不多,你的微信号和联系方式是拿不到的。

 利用Python查看微信共同好友功能的实现代码

而这里的UserName,同一个你在不同的微信号中UserName并不相同。所以,在并没有一个可以特定区分好友的情况下,我们选择获取多组信息来组合拼凑成一个整体,这里我选择了以下数据组成一个字典dict:

 
利用Python查看微信共同好友功能的实现代码

通过以上一个字典八组数据来代表每一位独立好友信息。接下来在要比较的两组好友信息列表中,进行查重,这里我采用了最笨的遍历方法:

利用Python查看微信共同好友功能的实现代码

记录信息

由于一些特殊字符因为编码问题无法写入txt文档,我选择既写入txt又同时print出来相结合的方式:

利用Python查看微信共同好友功能的实现代码

回顾

整个流程下来,涉及到的就是itchat接口的使用、将信息赋值给list、获取两个list公共元素、将信息写入txt文件这四部分。

除了itchat接口获取好友数据看着复杂外,别的都是基础语法。而itchat相关的代码就几行,所以你说,python是不是贼好用?

更多python 相关知识,请关注小编公众号【码农那点事儿

总结

以上所述是小编给大家介绍的利用Python查看微信共同好友功能的实现代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
python 根据正则表达式提取指定的内容实例详解
Dec 04 Python
Python中字典(dict)合并的四种方法总结
Aug 10 Python
django 外键model的互相读取方法
Dec 15 Python
Python with关键字,上下文管理器,@contextmanager文件操作示例
Oct 17 Python
手把手教你Python yLab的绘制折线图的画法
Oct 23 Python
numpy.transpose()实现数组的转置例子
Dec 02 Python
Django2 连接MySQL及model测试实例分析
Dec 10 Python
安装多个版本的TensorFlow的方法步骤
Apr 21 Python
Python: glob匹配文件的操作
Dec 11 Python
用pushplus+python监控亚马逊到货动态推送微信
Jan 29 Python
python入门之算法学习
Apr 22 Python
python b站视频下载的五种版本
May 27 Python
python实现飞机大战游戏
Oct 26 #Python
Python3.5面向对象程序设计之类的继承和多态详解
Apr 24 #Python
Python supervisor强大的进程管理工具的使用
Apr 24 #Python
python3爬虫学习之数据存储txt的案例详解
Apr 24 #Python
Python3.5面向对象编程图文与实例详解
Apr 24 #Python
Python对ElasticSearch获取数据及操作
Apr 24 #Python
Python3.5面向对象与继承图文实例详解
Apr 24 #Python
You might like
PHP文件读写操作之文件读取方法详解
2011/01/13 PHP
基于ThinkPHP实现批量删除
2015/12/18 PHP
PHP两个n位的二进制整数相加问题的解决
2018/08/26 PHP
Laravel自动生成UUID,从建表到使用详解
2019/10/24 PHP
为数据添加append,remove功能
2006/10/03 Javascript
70+漂亮且极具亲和力的导航菜单设计国外网站推荐
2011/09/20 Javascript
javascript格式化指定日期对象的方法
2015/04/21 Javascript
javascript实现十秒钟后注册按钮可点击的方法
2015/05/13 Javascript
JS动态创建DOM元素的方法
2015/06/09 Javascript
JavaScript中反正弦函数Math.asin()的使用简介
2015/06/14 Javascript
简单的js计算器实现
2016/10/26 Javascript
Bootstrap基本样式学习笔记之图片(6)
2016/12/07 Javascript
BootStrap表单控件之复选框checkbox和单选择按钮radio
2017/05/23 Javascript
Node.js如何使用Diffie-Hellman密钥交换算法详解
2017/09/05 Javascript
基于Node.js模板引擎教程-jade速学与实战1
2017/09/17 Javascript
JS实现textarea通过换行或者回车把多行数字分割成数组并且去掉数组中空的值
2018/10/29 Javascript
vue路由中前进后退的一些事儿
2019/05/18 Javascript
turn.js异步加载实现翻书效果
2019/07/25 Javascript
Vue-drag-resize 拖拽缩放插件的使用(简单示例)
2019/12/04 Javascript
jquery传参及获取方式(两种方式)
2020/02/13 jQuery
vue中组件通信详解(父子组件, 爷孙组件, 兄弟组件)
2020/07/27 Javascript
JavaScript中的函数式编程详解
2020/08/22 Javascript
[05:31]DOTA2上海特级锦标赛主赛事第三日RECAP
2016/03/05 DOTA
Python3 实现随机生成一组不重复数并按行写入文件
2018/04/09 Python
Python创建一个空的dataframe,并循环赋值的方法
2018/11/08 Python
python3 使用ssh隧道连接mysql的操作
2020/12/05 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
基于DOM+CSS3实现OrgChart组织结构图插件
2016/03/02 HTML / CSS
HTML利用九宫格原理进行网页布局
2020/03/13 HTML / CSS
物理专业大学生职业生涯规划书
2014/02/07 职场文书
项目工作说明书
2014/07/29 职场文书
上课玩手机的检讨书
2014/10/01 职场文书
2015年仓库管理工作总结
2015/05/25 职场文书
《暗黑破坏神2:重制版》本周进行第一轮A测 目前可官网进行申请报名
2021/04/07 其他游戏
SpringAop日志找不到方法的处理
2021/06/21 Java/Android
MySQL的索引你了解吗
2022/03/13 MySQL