本文介绍的基于Python+adb实现的微信好友检测,是通过adb操控手机,模拟人的点击、截屏操作,对应用无侵入,无需扫描登录即可实现好友检测。

网上看到一些文章类似功能的实现,总结起来千篇一律的引入一个叫itchat的库来实现。我不喜欢这种方式,感觉这种方式对应用有侵入,有潜在安全风险和被封号的风险,同时需要扫描登录,操作繁琐。

如何用

运行python setup.py或者python wechat-bot.py

特点

手机无需root,只需开启调试模式

利用图像处理技术

操作简单

实现原理

电脑通过adb操控手机

模拟点击打开联系人朋友圈

多次滑动朋友圈然后截屏

将截屏传至电脑,Python调用ocr(图片中文字提取)接口提取文字

通过提取到的文字判断是否是好友

为什么要多次滑动朋友圈呢?

如果滑动一次的话并不能确定好友状态,多滑动几次多拉取几次动态,底部会显示“朋友仅展示...”“非好友...”,这些文字会被ocr技术提取到,这也是判断是否是好友的核心依据

完整功能代码在GitHub,这里show一段判断代码

# 判断是否是好友,调用百度的orc接口,返回自动含义参考百度ai文档

def test_is_friend(self, res):

if res['words_result_num'] == 0: #

self.temp['status'] = '该好友屏蔽了你'

return False

last_word = res['words_result'][-1]['words']

self.temp['status'] = last_word

index = last_word.find('朋友仅展示')

if index >= 0:

return True

index = last_word.find('非对方的朋友')

if index >= 0:

return False

if res['words_result_num'] < 3:

self.temp['status'] = '该好友屏蔽了你'

return False

return True

pass

写在最后

微信【通讯录】列表中存在微信团队账号、文件传输账号、对方已删除的帐号、自己的账号,这些账号没有朋友圈,要加以排除

还有一种情况,就是好友关闭了朋友圈,这种情况也要加以排除。

热爱技术 期与同道交流

我的微信公众号

python检测微信好友是否删除_基于Python+adb实现微信是否好友检测相关推荐

  1. 基于python的公众号课堂教学_基于Python的微信公众号数据挖掘分析

    基于Python的微信公众号数据挖掘分析 华南农业大学电子工程学院 王 建 黄宁香 [期刊名称]电子世界 [年(卷),期]2019(000)011 [总页数]3 运用Python网络爬虫技术对某时事类 ...

  2. python扫雷的代码及原理_基于Python实现的扫雷游戏实例代码

    摘要:这篇Python开发技术栏目下的"基于Python实现的扫雷游戏实例代码",介绍的技术点是"Python实现.Python.实例代码.扫雷游戏.扫雷.游戏" ...

  3. python的图书管理项目教程_基于python图书馆管理系统设计实例详解

    写完这个项目后,导师说这个你完全可以当作毕业项目使用了,写的很全,很多的都设计考虑周全,但我的脚步绝不止于现在,我想要的是星辰大海!与君共勉! 这个项目不是我的作业, 只是无意中被拉进来了,然后就承担 ...

  4. python中numpy数组的合并_基于Python中numpy数组的合并实例讲解

    基于Python中numpy数组的合并实例讲解 Python中numpy数组的合并有很多方法,如 - np.append() - np.concatenate() - np.stack() - np. ...

  5. python怎样使用各个日期赤纬_基于Python的天文软件命令行界面设计与实现

    计算机软件技术的不断发展,推动了人机交互技术的长足进步.从传统的命令行(Command Line Interface,CLI),到图形用户界面(Graphical User Interface,GUI ...

  6. python版植物大战僵尸源码_基于python的植物大战僵尸游戏设计与实现.docx

    湖南理工学院毕业设计(论文) PAGE PAGE 1 学 号 毕业设计(论文) 题目:基于python的植物大战僵尸游戏设计与实现 作 者 届 别 届 院 别 信息与通信工程学院 专 业 信息工程 指 ...

  7. python分布式爬虫开题报告范文_基于Python的豆瓣Top250排行榜影片数据爬取和分析开题报告...

    一.选题依据:(简述研究现状,说明该毕业设计的设计目的及意义) 研究现状 Python是一门很全面的语言,又随着大数据和人工智能的兴起,广受爬虫设计者们的青眯.设计者们运用Python语言的框架-Sc ...

  8. 用python写脚本筛选原创微博_基于python编写的微博应用

    本文实例讲述了基于python编写的微博应用,分享给大家供大家参考.具体如下: 在编写自己的微博应用之前,先要到weibo开放平台申请应用的公钥和私钥. 下载python版的SDK,打开example ...

  9. python中sample是什么意思_基于Python中random.sample()的替代方案

    python中random.sample()方法可以随机地从指定列表中提取出N个不同的元素,但在实践中发现,当N的值比较大的时候,该方法执行速度很慢,如: numpy random模块中的choice ...

最新文章

  1. 电源符号VCC、VDD、VEE、VSS都是什么意思?有何区别?
  2. Python环境下的数据库编程
  3. ICCV 2017 PTAV:《Parallel Tracking and Verifying:A Framework for Real-Time and High Accuracy ...》论文笔记
  4. XML 新手最佳入门教程
  5. 打印SAP ABAP web service call完整的payload
  6. Springmvc 返回html视图解决
  7. spring helloworld
  8. IT痴汉的工作现状16-职业发展
  9. mysql ==0_MySQL关于日期为零值的处理
  10. Ubuntu,安装最新版的GCC
  11. Window底部任务栏点击没反应,桌面正常
  12. ES中 minimum_should_match 的用法和误区
  13. java+js+html 实现webSocket广播及私聊
  14. CODEVS 3977 炉石传说——圣骑士的逆袭
  15. PyQt5初学试验记录(三):Pyinstaller打包小结
  16. (一)传说中“哈佛最受欢迎的课程”
  17. RK3588 调试 phy
  18. 软件工程 in MSRA 第一周博客作业
  19. 日常 --- watch的使用
  20. AdaBoost算法-课堂笔记

热门文章

  1. 基于 RFID 与 ZigBee 智能汽车装配生产线车模追溯系统
  2. (翻译)传统和深度学习模型在文本分类中的应用综述与基准
  3. mac系统降级 重装系统
  4. 【easyTrader源码分析1】源码结构梳理
  5. 利用Python做新能源公司股票分析(可视化)
  6. 诊断Diagnostics
  7. Cannot resolve directory 'xxx'
  8. 构建vue-cli npm安装webpack报错原因 error -4075解决办法
  9. matlab中p1x怎么表示什么,MATLAB复习题(含答案).doc
  10. firefox iMacros