名字学 > 微信名字 > 用Python找出删除你微信的所有人并将他们自动化删除

用Python找出删除你微信的所有人并将他们自动化删除

投稿人:名字学起名网2022-08-21 15:12:45

概述

不知你是否遇到过在微信上给通讯录中的某个人发消息,结果出现了这一幕:

平时一直认为自己的心里素质过硬,不过遇到这种情况 ...

在我缓了半个钟头(半分钟)之后,缓缓拿出了手机,打开微信,找到通讯录中的 ABC,默默地按下了删除按钮,此刻的我心如止水 ...

微信 获取昵称_获取微信昵称乱码_微信获取昵称表情乱码

好了微信 获取昵称,我们回到正题,为了避免再次出现上述情况,我决定把微信通讯录中删除了自己的人全部找出来并且删除,之前我已经在网上了解到检查自己的微信是否被删比较好的方式就是转账,通过转账我们可以实现无痕检测。

下面我们通过两张图片直观的看一下微信被删前后给别人转账的效果:

微信 获取昵称_微信获取昵称表情乱码_获取微信昵称乱码

获取微信昵称乱码_微信获取昵称表情乱码_微信 获取昵称

现在已经知道了检测方式,正在我准备挨个检测时,无意识的滑动了微信通讯录列表,100、200 ... 500 ...

获取微信昵称乱码_微信 获取昵称_微信获取昵称表情乱码

我去!什么时候加了这么多人,滑动列表的同时我顺势扫了一眼微信名字:A卖保险、B办理信用卡、C游泳健身、D卖保健品 ... 此刻我知道了微信通讯录中有这么多人的玄机微信 获取昵称,但是有个问题,这么多人我挨个手动执行转账还不累屎了 ...

如果手动执行的方式行不通,那么可以通过编程的方式自动化执行吗?-想到这里我陷入了沉思 ...

获取微信昵称乱码_微信 获取昵称_微信获取昵称表情乱码

突然我脑中闪了一下(不是抽筋哈

),思绪渐明,前几天我不是写了一篇Python + Appium 自动化操作微信入门吗?-用这个应该就可以实现,编程实现的基本思路如下:

微信 获取昵称_微信获取昵称表情乱码_获取微信昵称乱码

环境

因之前在模拟器上测试 Appium 模拟微信转账可能有点问题,因此本文使用真机实现。

先简单介绍一下真机环境,下面一起来看一下相应步骤。

获取微信昵称乱码_微信 获取昵称_微信获取昵称表情乱码

获取微信昵称乱码_微信获取昵称表情乱码_微信 获取昵称

微信获取昵称表情乱码_获取微信昵称乱码_微信 获取昵称

通过上面的一系列操作,我们已经处理好了真机环境了。

Appium 的环境本文就不说了,如果不清楚的话,可以看一下:Python + Appium 自动化操作微信入门。

实现

下面我们开始手动敲代码,如果对 Appium 基本代码操作不了解的话,还是可以去看一下我之前写的这篇:Python + Appium 自动化操作微信入门,真机与模拟器的使用基本一样。

想要完整源码的可以后台私信小编01获取

首先看一下相应参数配置,代码实现如下:

desired_caps = {    "platformName": "Android", # 系统    "platformVersion": "8.0.0", # 系统本号    "deviceName": "m5s", # 设备名    "appPackage": "com.tencent.mm", # 包名    "appActivity": ".ui.LauncherUI", # app 启动时主 Activity

微信获取昵称表情乱码_微信 获取昵称_获取微信昵称乱码

'unicodeKeyboard': True, # 使用自带输入法 'noReset': True # 保留 session 信息,可以避免重新登录}

接着看一下如何获取微信通讯录名字(备注)列表?-代码实现如下:

# 获取通讯录列表def get_address_list():    driver.find_elements_by_id('com.tencent.mm:id/cn_')[1].click()    # 获取昵称(备注)    address_list = driver.find_elements_by_id('com.tencent.mm:id/dy5')    remarks = []    for address in address_list:        remark = address.get_attribute("content-desc")        # 排除自己和微信官方号        if remark != "自己的微信名" and "微信" not in remark:            remarks.append(remark)    return remarks

取到了微信通讯录列表之后,我们就可以对其进行遍历检测了,下面看一下如何实现检测自己的微信是否被删,代码实现如下:

# 判断是否被删def is_delete(remark, count):    if count == "1":        time.sleep(2)        print('点击微信搜索框')        driver.find_element_by_id('com.tencent.mm:id/cn1').click()    time.sleep(2)    print('在搜索框输入搜索信息')    driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys(remark)    time.sleep(2)    print('点击搜索到的好友')    driver.find_element_by_id('com.tencent.mm:id/tm').click()    time.sleep(2)    # 转账    driver.find_element_by_id('com.tencent.mm:id/aks').click()    time.sleep(2)    driver.find_elements_by_id('com.tencent.mm:id/pa')[5].click()    time.sleep(2)    driver.find_element_by_id('com.tencent.mm:id/cx_').click()    time.sleep(2)    driver.find_element_by_id('com.tencent.mm:id/cxi').click()    time.sleep(5)    # 判断是否被删    is_exist = is_element_exist('com.tencent.mm:id/jh')    if is_exist is True:        return remark    else:        return False

上述方法中,如果检测到是删了自己微信的人就返回那个人的微信名(备注),然后我们将这些人记录起来;如果检测到不是删除自己微信的人就返回 False。

上述过程执行完了之后,我们就可以获取到所有删了自己微信的人了,接下来我们就可以将这些人都从自己微信通讯录中删除了,删除实现的代码如下:

# 删除把自己删除的人def del_person(nicks):    for inx, val in enumerate(nicks):        time.sleep(2)        if inx == 0:            print('在搜索框输入搜索信息')            driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys(val)        else:            time.sleep(2)            print('点击微信搜索框')            driver.find_element_by_id('com.tencent.mm:id/cn1').click()            print('在搜索框输入搜索信息')            time.sleep(1)

获取微信昵称乱码_微信获取昵称表情乱码_微信 获取昵称

driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys(val) time.sleep(2) print('点击搜索到的人') driver.find_element_by_id('com.tencent.mm:id/tm').click() time.sleep(2) print('点击聊天对话框右上角...') driver.find_element_by_id('com.tencent.mm:id/cj').click() time.sleep(2) print('点击头像') driver.find_element_by_id('com.tencent.mm:id/f3y').click() time.sleep(2) print('点击联系人右上角...') driver.find_element_by_id('com.tencent.mm:id/cj').click() time.sleep(2) print('点击删除按钮') driver.find_element_by_id('com.tencent.mm:id/g6f').click() time.sleep(2) print('点击弹出框中的删除') driver.find_element_by_id('com.tencent.mm:id/doz').click()

至此,我们就利用 Python + Appium 实现了自动化找出微信中删除自己的人并将其删除的工作了。

多说一句,很多人学Python过程中会遇到各种烦恼问题,没有人解答容易放弃。小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。

下一篇 :

分享:

扫一扫在手机浏览本文