利用Python查看微信共同好友

思路

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

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

itchat

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

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

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


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

#在命令行生成登录二维码

itchat.auto_login(enableCmdQR=True)

好友信息处理

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


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

{"City":"","PYQuanPin":"","Province":"","PYInitial":"","Sex":0,'Signature':"",'Signature':"",'NickName':""}

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


记录信息

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


实现效果


回顾

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

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

转载于:https://www.cnblogs.com/Pythonmiss/p/10762133.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/275269.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

女生适合学ux吗_UX设计色彩心理学,理论与可访问性

女生适合学ux吗Colour is an interesting topic, which I feel is often overlooked and sometimes under-appreciated. One of the first things I was taught was the power of colour, how it can have an impact on human emotion, and that there should be purpose behin…

初学者也能看懂的 Vue2 源码中那些实用的基础工具函数

1. 前言大家好,我是若川。最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12想学源码,极力推荐之前我写的《学习源码整体架构系列》jQuery、underscore、lodash、vuex、sentry、axios、redux、koa、vue-devtools、vuex4、koa-compose、…

清除浮动mini版

1) 清除浮动mini版(简约而不简单).clr:after { content:"";display:table;clear:both;}.clr{zoom:1;} 转载于:https://www.cnblogs.com/jinbiao/archive/2011/09/26/2191170.html

Fiddler 十分钟最全使用介绍

Wireshark 、HTTPWatch、Fiddler的介绍 Firebug虽然可以抓包,但是对于分析http请求的详细信息,不够强大。模拟http请求的功能也不够,且firebug常常是需要“无刷新修改”,如果刷新了页面,所有的修改都不会保存。Wiresha…

视觉测试_视觉设计流行测验

视觉测试重点 (Top highlight)I often discuss the topic of improving visual design skills with junior and mid-level designers. While there are a number of design principles the designers should learn and practice, one important skill that is not often consid…

如何给开源项目提过 PR 呢?其实很简单

大家好,我是若川。最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12源码共读群里有小伙伴聊到如何给开源项目提PR,所以今天分享这篇文章。你有给开源的库或者框架提过 PR 吗?如果没有,那么今天的文章会教你怎么…

一次回母校教前端的经历

大家好,我是若川。最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12已进行了三个月,很多小伙伴都表示收获颇丰。分享一篇武大毕业的耀耀大佬的文章。有些时候会受限于环境影响,特别是在校大学生。所以要融入到积极上进的环…

设计插画工具_5个强大的设计师插画工具

设计插画工具As Product Designers, most likely, we have come across illustrative work. Visual design is one important element in enhancing the user experience. As many gravitate toward attractive looking products, designers are also adapting to the changing…

如何才能更合理地分配项目奖金?

项目奖金通常情况下都是属于基本工资之外的一种绩效奖励,也就是说,它在员工的薪酬中,是属于浮动的那一部分收入,而不是一种固定收入。基于这样一种认知,跟大家讨论下如何才能更合理地进行项目奖金的分配? 首…

Codeforces 741 D - Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths

D - Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths 思路: 树上启发式合并 从根节点出发到每个位置的每个字符的奇偶性记为每个位置的状态,每次统计一下每个状态的最大深度 为了保证链经过当前节点u,我们先计算每个子树的答案…

figma下载_切换到Figma并在其中工作不必是火箭科学,这就是为什么

figma下载We have seen Elon Musk and SpaceX making Rocket Science look like a child’s play. In the same spirit, should design tools be rocket science that is too hard to master? Not at all.我们已经看到埃隆马斯克(Elon Musk)和SpaceX使Rocket Science看起来像是…

npm、yarn、cnpm、pnpm 使用操作都在这了

大家好,我是若川。最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12有时候想查个命令,或者换个镜像找了几篇文章才找到,最近闲着没事干,干脆整理一篇文档,以后就不用在网上瞎搜有的还写不全。Usage…

CAN控制器的选择

在进行CAN总线开发前,首先要选择好CAN总线控制器。下面就比较一些控制器的特点。 一些主要的CAN总线器件产品 制造商 产品型号 器件功能及特点 Intel 82526 82527 8XC196CA/CB CAN通信控制器,符合CAN2.0A CAN通信控制器,符合CAN2.0B 扩展…

洛谷 4115 Qtree4——链分治

题目:https://www.luogu.org/problemnew/show/P4115 论文:https://wenku.baidu.com/view/1bc2e4ea172ded630b1cb602.html 重链剖分,分别用线段树维护每条重链。线段树叶子的信息是该点轻孩子的信息;线段树区间的信息是考虑重链的一…

每次启动项目的服务,电脑竟然乖乖的帮我打开了浏览器,100行源码揭秘!

1. 前言大家好,我是若川。最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12 参与,已进行三个月了,大家一起交流学习,共同进步。想学源码,极力推荐之前我写的《学习源码整体架构系列》 包含jQuery、…

初级爬虫师_初级设计师的4条视觉原则

初级爬虫师重点 (Top highlight)Like many UXers, I got into the industry from a non-visual background (in my case it was Business and later on Human Cognition). Even though I found great benefits coming from those backgrounds, it also meant I had no UI/Visua…

String类中IndexOf与SubString

IndexOfpublic: int IndexOf( String^ value, int startIndex, int count ) 说明: value类型:System..::.String要查找的 String。 startIndex类型:System..::.Int32搜索起始位置。 count类型:System..::.Int32要检查的字符位置…

开源监控解决方案OpenFalcon系列(一)

OpenFalcon是由小米的运维团队开源的一款企业级、高可用、可扩展的开源监控解决方案,,在众多开源爱好者的支持下,功能越来越丰富,文档更加的完善,OpenFalcon 已经成为国内最流行的监控系统之一。小米、美团、金山云、快…

如何利用 webpack 在项目中做出亮点

大家好,我是若川。最近这几年,在前端代码打包器领域内,webpack 算得上是时下最流行的前端打包工具。它可以分析各个模块的依赖关系,最终打包成我们常见的静态文件:.js 、 .css 、 .jpg 、.png,极大地提升了…

[转]上下拉电阻

上下拉电阻有什么用? 对这个问题,平时没有留意过,搞设计的时候都是照本宣科,没有真正弄懂意思. 很多单片机开发的入门者,以及一些从事软件开发的人,往往在开发单片机的时候遇到上拉电阻、下拉…