V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
dcatfly
V2EX  ›  分享创造

分享两个脚本,帮你自动完成电商双十一的任务(Android)

  •  
  •   dcatfly · 2019-10-25 08:47:06 +08:00 · 10055 次点击
    这是一个创建于 1616 天前的主题,其中的信息可能已经有所发展或是发生改变。

    迫于双十一电商活动重复性太高,基于 Auto.js ( Android )写了两个脚本来自动完成任务,希望对大家有帮助。

    github 地址

    第 1 条附言  ·  2019-10-26 00:59:00 +08:00

    脚本已更新,之前运行失败的朋友可以重新导入脚本试下。

    感谢#27楼的朋友提供的代码参考。

    主要更新了以下几点:

    • 优化了控件选择器,解决了部分手机上定位点击不准确的问题。
    • 解除了固定任务执行数量的限制,使其中断后可以重新执行。
    • 增加了很多任务或异常的提示,优化用户体验。
    43 条回复    2019-10-29 21:02:40 +08:00
    westoy
        1
    westoy  
       2019-10-25 08:56:15 +08:00
    阿里有风控的,99 划算节养章鱼用脚本的最后满级分到 1 分或者 1 毛
    dcatfly
        2
    dcatfly  
    OP
       2019-10-25 09:09:31 +08:00
    @westoy 额。。感谢提醒,这个情况我到是不确定。目前淘宝上是实时显示红包金额的,看起来是正常的。京东那边要到日子才分红包。到时候我再回来分享自己的金额,目前个人感觉这种通过无障碍权限,模拟人点击的脚本问题不大。
    roryzh
        3
    roryzh  
       2019-10-25 09:45:11 +08:00
    不错不错,挺好用的
    jydeng
        4
    jydeng  
       2019-10-25 09:51:45 +08:00
    star, 回家试试
    ZredoC
        5
    ZredoC  
       2019-10-25 09:59:34 +08:00
    感谢分享
    xgLi
        7
    xgLi  
       2019-10-25 10:43:08 +08:00
    想问下这个脚本正常运行应该是什么状态,mi8 好像不能正常运行
    ydsq
        8
    ydsq  
       2019-10-25 10:44:16 +08:00
    可以在安卓模拟器上运行吗
    icecodefire
        9
    icecodefire  
       2019-10-25 10:48:42 +08:00
    setScreenMetrics(1440, 3040); 这个屏幕设置 是根据 手机的像素来设置的么 ? 怎样确定点击位置的 click(1230, 2300);的坐标的
    dcatfly
        10
    dcatfly  
    OP
       2019-10-25 10:50:49 +08:00
    @huiyadanli 6666 京东的活动可以在浏览器中做吗?我按插件中的提示打开网址显示要打开 APP 呀
    dcatfly
        11
    dcatfly  
    OP
       2019-10-25 10:52:33 +08:00
    @xgLi 正常会自动打开你 app,进入活动页面,执行浏览任务。可否详细描述一下你的情况?谢谢。提 issue 也可以。
    dcatfly
        12
    dcatfly  
    OP
       2019-10-25 10:53:22 +08:00
    @ydsq 这个还没试过,不过淘宝之类的 app 应该可以识别当前是模拟器环境。
    dcatfly
        13
    dcatfly  
    OP
       2019-10-25 10:56:15 +08:00
    @icecodefire 是根据手机分辨率设置的,正常点击的位置会根据当前设备的分辨率自动缩放。
    如果想自己确定自己设备的点击位置,可以打开手机开发者选项中的指针位置,就可以实时显示点击位置。
    huiyadanli
        14
    huiyadanli  
       2019-10-25 10:57:02 +08:00
    @dcatfly #10 我按他说的先登录,然后再访问活动页面就可以了。。
    raylor
        15
    raylor  
       2019-10-25 10:58:16 +08:00
    Mi9 启动 app 后就不动了
    xgLi
        16
    xgLi  
       2019-10-25 11:05:31 +08:00
    @dcatfly 进入活动页面但不执行浏览任务,是要按照顺序先把分享任务手动做了吗?
    imyip
        17
    imyip  
       2019-10-25 11:08:05 +08:00
    根据坐标定位不是很能适配啊 , 根据页面布局元素选择比较好
    caoler
        18
    caoler  
       2019-10-25 11:09:54 +08:00
    小米 MIX2S,进入淘宝活动页面之后就没反应了
    laycher
        19
    laycher  
       2019-10-25 11:22:45 +08:00
    auto.js 这个现在只有 pro 版本?还有购买。
    fatelight
        20
    fatelight  
       2019-10-25 12:07:06 +08:00
    不买才是省(
    dcatfly
        21
    dcatfly  
    OP
       2019-10-25 12:27:06 +08:00
    @huiyadanli 试了一下 还是显示需要打开 app。不过我京东的任务做完了,只能分享了,也可能是跟这个有关。
    dcatfly
        22
    dcatfly  
    OP
       2019-10-25 12:27:35 +08:00
    @raylor #15 是淘宝还是京东?
    dcatfly
        23
    dcatfly  
    OP
       2019-10-25 12:29:48 +08:00
    @xgLi #16 不需要按顺序,做任务之前会让你填任务执行次数,这个需要跟剩余任务数相对应。你的次数填写是对的吗?或者补个截图?谢谢反馈。
    dcatfly
        24
    dcatfly  
    OP
       2019-10-25 12:31:27 +08:00
    @imyip #17 是的,但是有些控件是用 canvas 画出来的,或者控件本身没有标识,无法准确获取,所以才用了坐标的方式。
    dcatfly
        25
    dcatfly  
    OP
       2019-10-25 12:32:43 +08:00
    @caoler #18 麻烦提供下更详细的信息,比如剩余任务状况,填写的执行任务数量,或者截图之类的。谢谢。
    dcatfly
        26
    dcatfly  
    OP
       2019-10-25 12:36:29 +08:00
    @laycher #19 官方是的,作者是说有很多灰产在用,为了防止造成更大的影响,下架了软件,并且提供了阉割的 pro 版。但是软件本身是开源的,可以使用源码自己编译 apk,我的项目中也提供了自己编译的安装包。
    qq850482461
        27
    qq850482461  
       2019-10-25 13:53:20 +08:00   ❤️ 2
    auto.waitFor()
    var appRun = currentActivity()
    if(appRun != 'com.taobao.taobao') {
    launch("com.taobao.taobao");
    toast("打开手机淘宝中");
    waitForActivity("com.taobao.tao.TBMainActivity");
    }


    function run() {
    className('android.widget.LinearLayout').desc('捉猫猫').findOne().click()
    className('android.view.View').clickable(true).depth(18).indexInParent(5).findOne().click()
    sleep(3000)
    if (text("签到").exists()) {
    text("签到").findOne().click();
    sleep(1600);
    toast("签到成功")
    }
    if(text("去进店").exists()) {
    toast("开始进行 去进店 任务!")
    goShop()
    };
    if(text("去浏览").exists()) {
    toast("开始进行 去浏览 任务!")
    goBrowse()
    };
    visitShop()
    }


    function goShop() {
    let x = device.width / 2, y = device.height / 5;
    for (let t = 1; t < 21; t++) {
    click(text("去进店").findOne().click())
    toast("点击去进店")
    sleep(2000)
    var task = className('android.view.View').depth(21).desc('任务完成').exists()
    while(!task) {
    swipe(x, 4*y, x, y,1000);
    sleep(3000)
    task = className('android.view.View').depth(21).desc('任务完成').exists()
    if (task) toast('任务完成');
    }
    back()
    toast("已经逛了" + t + "次")
    sleep(2000)
    }
    }


    function goBrowse() {
    while (text("去浏览").exists()) {
    //判断是否有去浏览
    text("去浏览").findOne().click();
    sleep(20000)
    back()
    sleep(2000)
    }
    }


    run()
    qq850482461
        28
    qq850482461  
       2019-10-25 13:53:40 +08:00
    给大家发一个能用的,楼主的那个用不了,网上找了一个能用的
    sparrww
        29
    sparrww  
       2019-10-25 14:02:58 +08:00   ❤️ 1
    分享一个京东活动能用的 https://www.ww01.net/archives/22357
    dcatfly
        30
    dcatfly  
    OP
       2019-10-25 14:24:20 +08:00
    @qq850482461 感谢分享,晚点我参考一下~
    lework1234
        31
    lework1234  
       2019-10-25 14:25:41 +08:00
    @sparrww 牛逼,确实可用
    raylor
        32
    raylor  
       2019-10-25 15:21:37 +08:00
    @dcatfly tb jd 都不行,无障碍服务权限已打开
    hsuvee
        33
    hsuvee  
       2019-10-25 15:53:24 +08:00
    没有 “捉猫猫‘ 这个按钮,我感觉我的淘宝和大家的不一样
    soho176
        34
    soho176  
       2019-10-25 20:40:00 +08:00   ❤️ 1
    感谢 !!
    dcatfly
        35
    dcatfly  
    OP
       2019-10-26 00:53:34 +08:00
    @raylor 项目中已更新了脚本,麻烦再试一下。
    dcatfly
        36
    dcatfly  
    OP
       2019-10-26 00:54:14 +08:00
    @hsuvee 是否开了代理,或者人在海外?我开了代理的情况下不会出现捉猫猫。
    sparrww
        37
    sparrww  
       2019-10-26 10:07:30 +08:00
    在分享一个逛天猫店铺的 http://www.ww01.net/archives/23436
    iacyl
        38
    iacyl  
       2019-10-26 19:49:33 +08:00
    没有捉猫猫这个按钮,没开代理,人在中国。
    dcatfly
        39
    dcatfly  
    OP
       2019-10-26 20:48:05 +08:00
    @iacyl 有点神奇,那你有淘宝双十一的活动吗?
    iacyl
        40
    iacyl  
       2019-10-27 09:14:06 +08:00
    @dcatfly #39 有啊,主页可以从双十一合伙人那进去。
    macrosea
        41
    macrosea  
       2019-10-28 11:21:49 +08:00 via iPhone
    厉害
    codergrowing
        42
    codergrowing  
       2019-10-29 11:06:03 +08:00
    没有捉猫猫按钮+1
    dcatfly
        43
    dcatfly  
    OP
       2019-10-29 21:02:40 +08:00
    @codergrowing @iacyl 我更新了脚本,改了选择器,解决了手动点击无效的 bug,可以再试一下。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3222 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 14:23 · PVG 22:23 · LAX 07:23 · JFK 10:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.