Qwen3-Coder 实战:开发“汽水音乐”广告自动点击器
摘要:本文介绍利用Qwen3-Coder大模型辅助开发汽水音乐App广告自动点击器的完整过程。该工具基于Python,通过OpenCV实现图像识别,结合ADB控制Android设备,可自动处理"领取成功"和"领取奖励"弹窗。文章详细记录了开发环境搭建(Python 3.12+OpenCV+ADB)、核心代码实现(模板匹配与坐标计算)、调试优化(阈值调整与延时
·
使用 Qwen3-Coder 大型语言模型辅助,从零开始开发一个针对“汽水音乐”App的广告自动点击器的全过程。该工具基于 Python,利用 OpenCV 进行图像识别,并通过 ADB (Android Debug Bridge) 控制 Android 手机,实现自动化处理 App 内的广告弹窗(如“领取成功”和“领取奖励”)。文章详细阐述了开发环境搭建、核心代码实现、调试优化以及最终效果展示,旨在为有类似需求的开发者提供参考。
关键词
Qwen3-Coder, Python, OpenCV, ADB, 自动化脚本, 汽水音乐, 广告点击器
1. 引言
在使用许多免费的手机应用时,频繁的广告弹窗会严重影响用户体验。为了提升使用“汽水音乐”App时的便捷性,笔者尝试开发一个自动化工具,用于自动识别并关闭特定的广告弹窗。得益于 Qwen3-Coder 的强大代码生成与解释能力,整个开发过程变得高效且直观。本文将分享从构思到实现的完整步骤。
2. 开发环境与工具
- 操作系统 : Windows 10
- 编程语言 : Python 3.12
- 手机系统 : 澎湃OS
- 主要库 :
opencv-python
: 用于图像处理和模板匹配。numpy
: 提供强大的数组运算支持。pyautogui
(文中未实际使用其点击功能,但提及): 用于桌面自动化(最终使用 ADB 实现手机点击)。
- 辅助工具 :
- ADB (Android Debug Bridge) : 用于电脑与 Android 手机通信,执行截图和点击操作。
- VS Code : 代码编辑器。
- 画图工具 : 用于截取模板图片。
3. 需求分析
目标是创建一个脚本,能够:
- 监控手机屏幕 : 定期获取手机屏幕截图。
- 识别特定元素 :
- 识别屏幕右上角的“领取成功 ×”提示。
- 识别页面中央的“领取奖励”按钮。
- 执行自动化操作 :
- 当仅出现“领取成功”时,自动点击其右侧的关闭“×”按钮。
- 当出现“领取奖励”按钮时(即使同时有“领取成功”),优先点击“领取奖励”按钮以触发广告流程。
- 运行环境 : 脚本在 Windows 电脑上运行,通过 USB 数据线控制已开启 USB 调试的小米手机。
4. 实现步骤
4.1 环境准备与手机连接
- 安装 Python 及所需库 (
pip install opencv-python numpy
)。 - 下载并配置 ADB 工具,将其路径添加到系统环境变量中。
- 在小米手机上开启“开发者选项”和“USB 调试”。
- 通过 USB 数据线连接手机与电脑,在手机上授权电脑的 ADB 调试请求。
- 在命令行中运行
adb devices
验证连接状态。
4.2 准备模板图片
- 在“汽水音乐”App中触发目标广告弹窗。
- 使用手机截图功能获取屏幕截图。
- 使用 Windows 自带的“画图”工具,从截图中精确截取“领取成功 ×”和“领取奖励”按钮的区域。
- 将截取的图片分别保存为
success_close.png
和reward_button.png
,并放置于项目根目录下。
4.3 核心代码开发 (由 Qwen3-Coder 辅助生成)
- 创建
main.py
文件 :- 初始化 : 加载模板图片。
- 屏幕截图 : 使用
subprocess
调用adb shell screencap
和adb pull
命令获取并拉取手机屏幕截图到本地。 - 图像识别 : 利用
cv2.matchTemplate
和cv2.TM_CCOEFF_NORMED
方法进行模板匹配,查找模板在当前屏幕截图中的位置。 - 点击操作 : 使用
subprocess
调用adb shell input tap x y
命令在手机屏幕上指定坐标进行点击。 - 逻辑处理 :
- 优先检查是否存在“领取奖励”按钮。如果找到,则计算按钮中心坐标并点击,然后等待一段时间加载广告。
- 如果未找到“领取奖励”,则检查是否存在“领取成功”。如果找到,则计算其右侧关闭按钮的坐标(通过模板右边缘坐标加上一个偏移量)并点击。
- 设置循环和延时,持续监控屏幕。
4.4 调试与优化
- 运行脚本 :
python main.py
启动监控。 - 观察日志 : 通过打印的日志确认是否能正确识别目标元素及其坐标。
- 调整参数 :
- 若识别不准确,可调整模板匹配的
threshold
阈值。 - 若点击位置不准确,需调整计算点击坐标的偏移量(如“领取成功”模板宽度 + X像素)。
- 根据实际广告加载时间,调整点击后的
time.sleep()
时长。
- 若识别不准确,可调整模板匹配的
5. 运行效果
脚本成功运行后,能够:
- 准确识别“汽水音乐”App中的“领取成功 ×”弹窗,并自动点击关闭按钮。
- 准确识别“领取奖励”按钮,并优先点击以触发广告流程。
- 在有线连接状态下,稳定地执行自动化任务,显著减少了手动关闭广告的操作。
6. 局限性与注意事项 :
- 本工具目前仅针对“汽水音乐”App 中特定的“领取成功”和“领取奖励”弹窗进行了适配。
- 如果出现了其他需要关闭的界面,或者脚本行为触发了自动打开抖音等其他 App 的情况,则需要用户手动进行操作。 当前版本并未处理这些复杂或意外场景。
v1.1 升级:打包为 Windows 可执行文件 (.exe)
在上一版本的基础上,为了让工具更易于分发和使用,我们进行了重要的升级:将 Python 脚本打包成了独立的 Windows 可执行文件。
升级内容
-
资源路径优化:
- 修正了代码中加载图片资源的路径问题,确保程序在打包成
.exe
后仍能正确找到success_close.png
和reward_button.png
等必需的模板文件。这通过使用 PyInstaller 推荐的sys._MEIPASS
方法实现。
- 修正了代码中加载图片资源的路径问题,确保程序在打包成
-
界面微调:
- 对 GUI 界面进行了一些细微的美化,包括调整字体、颜色和布局,使其看起来更加现代和专业。
-
启动速度优化与后台初始化:
- 将初始化时的 ADB 连接检查移至后台线程执行,使得程序主窗口能够更快地显示出来,提升了用户体验。
- 优化了程序启动逻辑,确保在缺少可选依赖(如 Tesseract-OCR)时也能正常启动和运行核心功能。
-
PyInstaller 打包 (使用
.spec
文件):- 使用
PyInstaller
工具将整个 Python 项目(包括代码和依赖库)打包成了可以在未安装 Python 环境的 Windows 电脑上直接运行的程序。 - 采用
.spec
文件方式进行打包:通过自定义的.spec
配置文件,精确控制打包过程,包括资源文件的包含和可执行文件的属性(如关闭控制台窗口)。
- 使用
-
分发形式:
- 单文件形式 (
--onefile
): 本次发布的版本采用单文件形式。生成一个单独的.exe
文件,将所有内容都打包在内。这种方式极大地简化了分发(只有一个文件),用户下载解压后即可运行。
- 单文件形式 (
如何使用打包版本
- 下载:
- 本文下方提供了打包好的版本下载链接:
汽水音乐广告点击器_v1.1_onefile.zip
(单文件形式)
- 本文下方提供了打包好的版本下载链接:
- 解压:
- 下载后,请将
汽水音乐广告点击器_v1.1_onefile.zip
文件解压到一个你知道的目录下。
- 下载后,请将
- 运行:
- 进入解压后的文件夹,直接双击
汽水音乐广告点击器.exe
即可运行。
- 进入解压后的文件夹,直接双击
- 前置条件:
- 目标电脑上都必须正确安装并配置好 ADB (Android Debug Bridge),并且需要连接的 Android 手机已开启 USB 调试。打包版本不包含 ADB 程序本身。
- (可选,用于 OCR 功能) 如果需要使用程序的 OCR 文字识别功能来关闭更多类型的弹窗,需要在目标电脑上安装 Tesseract-OCR,并确保其
tessdata
文件夹路径正确(通常安装程序会自动配置)。
V1.3版本升级内容
主要更新内容
v1.3 版本 专注于提升用户体验和程序的独立性,主要解决了 v1.1 版本 中存在的一个关键问题:
- 修复了运行时弹出 DOS 黑窗口的问题:在 v1.1 版本中,当程序执行 ADB 命令(如截图、点击)时,可能会短暂弹出黑色的命令行窗口,影响使用体验。v1.3 版本通过技术手段彻底隐藏了这些由 ADB 子进程产生的窗口,实现了真正的“静默”运行。
v1.3 版本特性
- 无黑窗口运行:启动和运行程序时,不再出现任何 DOS 控制台窗口,界面更干净。
- 独立单文件:生成的
.exe
文件包含了所有必要的资源(如图片模板、ADB 工具等),真正做到开箱即用。 - 绿色便携:可以将
.exe
文件单独复制到任何目录(如桌面、D盘等)运行,无需担心依赖或资源文件路径问题。 - 兼容性:继承了 v1.1 的所有功能,包括准确识别、自动点击、后台 ADB 检查等。
使用方法
与 v1.1 版本相同:
- 确保手机已开启 USB 调试 并连接到电脑。
- 下载 v1.3 版本 的独立
.exe
文件。 - 将
.exe
文件放到任意你喜欢的目录下。 - 双击运行
.exe
文件。 - 点击程序界面上的 “开始运行” 按钮,程序即开始自动监控和点击广告。
总结
v1.3 版本是一个重要的优化版本,主要提升了程序的 静默性和独立性。对于追求无干扰体验的用户,v1.3 是 v1.1 的理想升级。
更多推荐
所有评论(0)