使用AI编程自动实现自动化操作

最近AI自动生成代码越来越流行,在不需要编写一行代码的前提下仅需几分钟就可以轻松实现各种以前要几天甚至几个礼拜才能实现的复杂程序。在通用编程领域比如:国外的Cursor、Copilot和国内的Trae等。在自动化脚本领域冰狐智能辅助最近出了一个专门针对自动化脚本的AI自动编程工具,可以直接将需求转换成对应的脚本,并能直接运行。下面我们来使用这个AI编程工具做一个x音自动化任务的例子供大家学习和借鉴用。

一、准备工作

如果是新手强烈建议先看冰狐AI编程文档,了解具体操作步骤,并配置好大模型参数,推荐使用deepseek。

二、梳理需求

我们总体需求是:x音操作。但是仅仅这样的比较笼统的、大概的需求还是不够的,我们必须尽量细化,否则AI可能无法正确返回结果。如何来细化需求呢?核心原则是:我们自己手工按需求实际操作下,把每一步的操作记录下来,一般就是我们最终的细化需求了。下面我们就具体来看下如何细化需求:

  • 打开x音

打开x音后,我们需要判断是否进入了x音,等进入了x音首页再继续后面的操作。因为不同的手机,不同的网络,x音加载的时间不一样,所以最好通过首页tag来判断是否进入了首页 。由下图可以知道我们可以使用"首页"这个文字来作为判断是否进入x音首页的依据。

  • 切换到目标页面

点击评论进入评论页面,AI并不知道具体应该点击哪个控件进入评论页面,也不知道是否成功进入了评论页面。所以我们要告诉AI,点击哪个控件(或者tag),进入包含有哪个控件(或者tag)页面。这样ai就可以生成完美的脚本了。

有上图可以知,我们可以点击"评论"开始的文本控件进入评论页面。

由上图可知,如果出现了以"条评论"结束的文字则进入了目标页面。

  • 处理任务

AI并不知道哪个控件里的文本是我们需要的,所以我们要告诉AI具体那个控件的文本。

由上图可知,id为:com.ss.android.ugc.aweme:id/content的控件里的文本为内容。

最后细化后的需求为:打开x音,如果找到"首页则打开成功。点击以"评论"开始的文本进入含有以"条评论"结尾的页面。最后获取id为com.ss.android.ugc.aweme:id/content的所有控件的信息。

三、生成脚本

将第二步的详细需求:"打开x音,如果找到"首页则打开成功。点击以"评论"开始的文本进入含有以"条评论"结尾的页面。最后获取id为com.ss.android.ugc.aweme:id/content的所有控件的信息"。直接提交给AI,AI思考几秒后,就会给出对应的代码。

javascript 复制代码
// 弹窗处理、广告处理
function e1() {
    var ret = findView('txt:关闭|txt:取消|txt:我知道了', {maxStep: 1});
    if (ret.length > 0) {
        click(ret.views[0], {click: true});
        sleep(500);
    }
}

function main() {
    // 启动某音APP,不检查特定tag
    if (1 != launchApp('com.ss.android.ugc.aweme', '', {afterWait: 5000, failed: e1})) {
        console.error('启动某音失败');
        return;
    }
    console.log('启动某音成功');

    // 检查是否进入首页
    var ret = findView('txt:首页', {maxStep: 10, failed: e1});
    if (ret.length > 0) {
        console.log('已进入首页');
        
        // 点击以"评论"开始的文本
        if (switchPage('txt^:评论', 'txt$:条评论', {click: true, maxStep: 10, failed: e1}).length > 0) {
            console.log('成功进入含有"条评论"的页面');
            
            // 获取所有id为com.ss.android.ugc.aweme:id/content的控件文本
            var contentViews = findView('id:com.ss.android.ugc.aweme:id/content', {flag: 'find_all', failed: e1});
            if (contentViews.length > 0) {
                for (var view of contentViews.views) {
                    console.log('控件文本:', view.text);
                }
            } else {
                console.log('未找到id为com.ss.android.ugc.aweme:id/content的控件');
            }
        } else {
            console.log('进入含有"条评论"的页面失败');
        }
    } else {
        console.log('未找到首页标识');
    }

    console.log('脚本执行结束');
}

四、调试运行

直接在左上脚点击"调试运行",即可执行脚本,在执行的过程中,左下角会有对应的log,可以通过log大概看到脚本执行的情况。详细如下图所示。

相关推荐
xiaozhenghahaha16 小时前
Web相关知识(草稿)
运维·nginx
格林威16 小时前
Linux使用-Linux系统管理
linux·运维·服务器·深度学习·ubuntu·计算机视觉
网硕互联的小客服16 小时前
如何配置安全的 SFTP 服务器?
运维·服务器·安全
码农101号16 小时前
Linux 网络安全运维与文件权限控制和日志操作
运维·web安全·云计算
程序员鱼皮17 小时前
再见 Claude,封禁中国等 “敌对国家” 的公司使用!脸都不要了?
程序员·ai编程·claude
Gss77718 小时前
Ansible 项目管理核心要点总结
linux·运维·ansible
半梦半醒*18 小时前
ansible中的角色(roles)
linux·运维·自动化·ssh·ansible·负载均衡
Insist75318 小时前
jenkins调用ansible部署lnmp平台-Discuz论坛
运维·服务器
布列瑟农的星空18 小时前
html中获取容器部署的环境变量
运维·前端·后端
一匹电信狗18 小时前
【Linux我做主】细说进程等待
linux·运维·服务器·c++·ubuntu·小程序·开源