前言

又到了一年一度的 618 年中购物节,淘宝跟去年双十一一样,推出了喵币的活动,通过做各种任务获取喵币,用户使用喵币召唤不同等级的猫猫并合成,当猫猫达到一定等级后可以兑换一定数额的红包,今天 6 月 1 号瓜分 1 亿红包,活动 29 号开始的,我没咋玩,只合成了一个 8 级的猫,分到了 6 块多钱。

python淘宝数据分析(用Python一键自动领取淘宝618理想猫活动喵喵币)(1)

看了下领喵币的任务,大部分都是类似去逛店 10s,逛会场 10s 之类的重复动作。按照每个任务大概耗时 20s 算的话,这一套任务做下来得半个多小时。最近学习 python 刚好会一点用 adb 指令对手机进行模拟操作,这样的话每天只要打开程序跑一下就可以自动完成所有任务。下面简单介绍下程序思想,实际运行演示见文末视频。

0x00 安装 Python

本程序是基于 Python 的,所以你得先配置好 Python 环境。简单来说就是下载并安装 python-3.7.3-amd64.exe 详细的过程网上教程很多,win R 然后输入 cmd 打开命令行窗口,输入 python,出现 python 版本信息的话 python 就安装好了。

python淘宝数据分析(用Python一键自动领取淘宝618理想猫活动喵喵币)(2)

0x01 ADB 配置

Android 调试桥( adb )是多种用途的工具,该工具可以帮助你管理设备或模拟器的状态。实际运用中我们可以通过 adb 进行 shell 命令的相关操作。

首先,我们需要在电脑上装好 adb 工具,配置好 adb 的环境变量,确保可以调用 adb 命令。win R 然后输入cmd 打开命令行窗口,输入 adb,同样的出现下面这种详细信息的话 adb 就配置好了 。

python淘宝数据分析(用Python一键自动领取淘宝618理想猫活动喵喵币)(3)

0x10 程序设计

本程序仅限安卓,iphone不适用。以三星s7手机为例,屏幕分辨率1080*1920,使用的是绝对坐标,分辨率相同的安卓手机可以直接使用,其他分辨率手机需要手动修改坐标。

程序思想很简单,就是先进入淘宝的「618理想大赢家」界面,然后点击相应任务图标中心点的坐标,模拟点击,完成任务后返回。已经完成的活动图标颜色会变化,可以作为提前结束该任务的判断依据。这里以「去逛店」任务为例,这个任务需要操作 50 次,也是所有任务中需要重复次数最多的。

python淘宝数据分析(用Python一键自动领取淘宝618理想猫活动喵喵币)(4)

Step 1:进入淘宝的「618理想大赢家」界面,向下滑动下界面,防止「领喵币」按钮发生偏移,这个界面也是所有动作完成和结束后的初始界面。点击黄色的领喵币,每次操作完等待 1s,防止操作太快被系统识别为机器人。

os.system('adb shell input swipe 900 500 900 800') # 从上往下滑动,回到页面初始位置 os.system('adb shell input tap 900 1670') # 点击下方领喵币 time.sleep(1)

Step 2:进入领喵币中心,点击对应的活动,这里点击「去逛店」。其他活动如果已经完成的话,对应的大红色按钮会变成淡粉色,可以在点击按钮之前先用if判断下。

Step 3:进入具体店铺页面后需要等待 10s,网络有一定延时,这里设置为 15s。

os.system('adb shell input tap 900 870') # 点击去逛店,然后等15s print('进入店铺,浏览页面中,请等待15s...') time.sleep(15)

Step 4: 15s 之后,截屏,判断下是否提示「领喵币」,如果有的话点击领取,然后返回到主界面,重复这个操作50 遍。如果没有提示「领喵币」的话,说明已经领过 50 次喵币,直接跳出循环,回到主界面。

if img.getpixel((970, 1128)) == (241, 196, 201, 255): os.system('adb shell input tap 970 1130') # 点击得喵币 print('已点击喵币,返回中...') time.sleep(1) os.system('adb shell input keyevent KEYCODE_BACK') # 返回 time.sleep(1) else: print('已完成50次去逛店任务') break

这样,50 遍「去逛店」任务就自动完成了,一共可以获得 50*300=15000 个喵币。可以将上面步骤打包成qu_guang_dian()函数,同样的,再写几个其他任务的函数,比如「浏览会场」liu_lan_hui_chang(),「看直播」kan_zhi_bo(),这样在主程序里直接调用对应的函数即可自动完成对应的活动任务。

0x11 运行

如果你是截屏分辨率 1080*1920 的安卓手机的话,只需要安装好 python 和 adb,在命令行窗口输入

python D:\OneDrive\GitHub\auto_miaomiaobi\auto_miaomiaobi.py #替换为你的文件路径

运行下载的源码文件auto_miaomiaobi.py即可。

python淘宝数据分析(用Python一键自动领取淘宝618理想猫活动喵喵币)(5)

这是个 Python 新手的练习程序,没有优化,没有自适应,没有打包成可执行程序,只适用于截屏分辨率 1080*1920 安卓手机。

想要源码的可以关注,转发,后台私信小编“01”即可领取,免费赠送Python学习资料,希望能帮助到大家。

python淘宝数据分析(用Python一键自动领取淘宝618理想猫活动喵喵币)(6)

,