【UIAutomator2】实现微信自动加好友功能

您所在的位置:网站首页 自动加微信群好友的软件 【UIAutomator2】实现微信自动加好友功能

【UIAutomator2】实现微信自动加好友功能

2024-07-16 05:24| 来源: 网络整理| 查看: 265

  【写在前头:此博客是基于python知识基础编写,仅用于个人学习使用,并非产品】

  开发思路:在实现微信自动加好友,并不是用的微信官方提供的api接口,是模拟点击手机屏幕操作。需要准备好:一部安卓手机、python环境、UIAutomator2、weditor 。 1)安卓手机:无特殊要求,能正常使用的安卓手机即可。进入设置,打开开发者模式。

2)python环境:python3(习惯用anaconda来管理python版本) 3)UIAutomator2:是一个可以使用Python对Android设备进行UI自动化的库 4)weditor: weditor 工具来进行手机元素识别,将对应的元素传给UIAutomator2。

1. 环境准备

1.1 UIAutomator2安装和初始化 UIAutomator2安装

pip3 install --pre -U uiautomator2

UIAutomator2初始化

python -m uiautomator2 init

1.2 运行python代码的pc连接手机 手机连接pc,adb命令保证能正确读取到设备。有两种方法:   1)通过WIFI,WiFi连接更方便一点,需要保持PC和手机使用的一个WIFI,查看手机连接WIFI的IP地址。手机的IP可以在设置-WIFI设置里面获取到。

import uiautomator2 as u2 c = u2.connect('192.168.168.108')

  2)通过USB数据线将手机链接电脑。手机的设备编号可以通过adb devices命令获取到。 【获取手机设备编号】   下载一个adb开发工具包,配置下环境变量。连接到电脑之后,进行cmd窗口,输入如下命令,便可以查看设备的手机设备编号,

adb devices

【uiautomator2 连接设备】   通过python代码,使用uiautomator2 模块连接手机。

import uiautomator2 as u2 c = u2.connect_usb('abcdef')

1.3 weditor安装

pip install -U weditor

1)pc终端输入python3 -m webditor,浏览器自动打开网页 http://atx.open.netease.com 2)网页对应位置输入手机设备ip,点击connect连接手机设备,最后根据需要获取手机/app对应元素。连接顺序如下:   step1:设备id输入   step2:Connect连接   step3:reload刷新页面

1.3 准备微信号,将手机点击进入微信聊天界面 打开微信聊天界面 在这里插入图片描述

在txt文件中准备几条微信id或者手机号,一条一行,存在本机目录。 在这里插入图片描述

2. 代码展示 import uiautomator2 as u2 # 通过wifi连接 c = u2.connect('192.168.168.108') # 读取文件中的微信账号 def readWechatID(filePath): lines = [] with open(filePath, 'r') as file_to_read: while True: line = file_to_read.readline() if not line: break line = line.strip('\n') lines.append(line) return lines # 通过搜索加好友 def addFriends(wechatID): c(resourceId="com.tencent.mm:id/l3").set_text(wechatID) c(resourceId="com.tencent.mm:id/n0").click() time.sleep(1) if(c.exists(text="该用户不存在")): print(wechatID,"该用户不存在") c(resourceId="com.tencent.mm:id/kz").click() elif(c.exists(text="添加到通讯录")): c(resourceId="com.tencent.mm:id/ct").click() time.sleep(1) if(c.exists(text="发消息")): print(wechatID,"已经是您的好友") c.press("back") c(resourceId="com.tencent.mm:id/kz").click() elif(c.exists(text="验证申请")): c(resourceId="com.tencent.mm:id/e49").set_text("111") c(resourceId="com.tencent.mm:id/ki").click() print(wechatID,"发送加好友请求成功") time.sleep(1) if(c.exists(text="验证申请")): print(wechatID,"请求有点频繁") c.press("back") c.press("back") c(resourceId="com.tencent.mm:id/kz").click() elif(c.exists(text="发消息")): print(wechatID,"已经是您的好友") c.press("back") c(resourceId="com.tencent.mm:id/kz").click() #主函数 def main(): #模拟点击右上角"+"按钮 c(resourceId="com.tencent.mm:id/jb", className="android.widget.ImageView", instance=1).click() time.sleep(1) #模拟点击添加朋友 c(resourceId="com.tencent.mm:id/cx", text=u"添加朋友").click() time.sleep(1) #模拟点击输入框 c(resourceId="com.tencent.mm:id/d_4").click() file_path=u'./name.txt' list = readWechatID(file_path) for i in list: time.sleep(1) addFriends(i) #将手机点击进入微信主界面,然后运行main()程序 main()


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3