利用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中的yield函数的用法
Apr 03 Python
python实现中文输出的两种方法
May 09 Python
Python学习笔记整理3之输入输出、python eval函数
Dec 14 Python
vscode 远程调试python的方法
Dec 01 Python
Python3.6日志Logging模块简单用法示例
Jun 14 Python
Django 视图层(view)的使用
Nov 09 Python
基于Python实现拆分和合并GIF动态图
Oct 22 Python
Python文件读写w+和r+区别解析
Mar 26 Python
在pycharm中debug 实时查看数据操作(交互式)
Jun 09 Python
Python学习之路之pycharm的第一个项目搭建过程
Jun 18 Python
python opencv肤色检测的实现示例
Dec 21 Python
Python 机器学习工具包SKlearn的安装与使用
May 14 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
【动漫杂谈】关于《请在T台上微笑》
2020/03/03 日漫
fleaphp下不确定的多条件查询的巧妙解决方法
2008/09/11 PHP
PHP文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤解析
2017/01/12 PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
2019/01/17 PHP
php+ajax 文件上传代码实例
2019/03/18 PHP
laravel中Redis队列监听中断的分析
2020/09/14 PHP
JS获取url链接字符串 location.href
2013/12/23 Javascript
jQuery经过一段时间自动隐藏指定元素的方法
2015/03/17 Javascript
JavaScript中使用指数方法Math.exp()的简介
2015/06/15 Javascript
第九章之路径分页标签与徽章组件
2016/04/25 Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
2018/01/02 jQuery
微信小程序城市选择及搜索功能的方法
2019/03/22 Javascript
javascript实现对话框功能警告(alert 消息对话框)确认(confirm 消息对话框)
2019/05/07 Javascript
JavaScript实现简易聊天对话框(加滚动条)
2020/02/10 Javascript
Vue 数据绑定的原理分析
2020/11/16 Javascript
[01:36]DOTA2完美大师赛趣味视频之与队友相处的十万个技巧
2017/11/19 DOTA
django实现同一个ip十分钟内只能注册一次的实例
2017/11/03 Python
详解python 拆包可迭代数据如tuple, list
2017/12/29 Python
PyQt5每天必学之组合框
2018/04/20 Python
一文了解Python并发编程的工程实现方法
2019/05/31 Python
对Python 中矩阵或者数组相减的法则详解
2019/08/26 Python
Python面向对象之多态原理与用法案例分析
2019/12/30 Python
Selenium 滚动页面至元素可见的方法
2020/03/18 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
2021/02/22 Python
Eastbay官网:美国最大的运动鞋网络零售商
2016/07/27 全球购物
英国鞋类及配饰零售商:Kurt Geiger
2017/02/04 全球购物
什么是类的返射机制
2016/02/06 面试题
C语言中break与continue的区别
2012/07/12 面试题
党校培训思想汇报
2013/12/30 职场文书
情况说明书格式范文
2014/05/06 职场文书
大学教师师德师风演讲稿
2014/08/22 职场文书
竞聘自述材料
2014/08/25 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
2015年幼师工作总结
2015/04/28 职场文书
小学开学典礼新闻稿
2015/07/17 职场文书
vue如何实现关闭对话框后刷新列表
2022/04/08 Vue.js