找回密码
 立即注册

微信登录

只需一步,快速开始

QQ登录

只需一步,快速开始

查看: 8|回复: 0

[心得] aardio 简单网页自动化

[复制链接]
  • TA的每日心情
    奋斗
    昨天 14:50
  • 签到天数: 55 天

    连续签到: 4 天

    [LV.5]常住居民I

    30

    主题

    60

    回帖

    766

    积分

    高级会员

    积分
    766
    来自: 中国贵州贵阳
    发表于 昨天 14:55 | 显示全部楼层 |阅读模式 来自: 中国贵州贵阳
    非业余 - aardio 编程语言 - 非官方问答社区
    风行者三期培训:Aardio+Python+Flutter,1000集课程让你成为全栈开发高手!https://mp.weixin.qq.com/s/_WOoHFtITUyLk2k7BXYGkg
    Aardio培训大揭秘,轻松上手打造个人项目!https://mp.weixin.qq.com/s/cr47qhp_Cpz0p57lbbPwug
    aardio风行者第二期培训班https://mp.weixin.qq.com/s/uB6XHUDnGSk0JlWuiBE9AA
    aardio风行者第三期培训班https://mp.weixin.qq.com/s/cdZcvFiAWhlYTaSrQGCPvA
    WebView自动化,以前每次重复做网页登录、搜索这些操作时都觉得好麻烦,现在终于能让程序替我干活了,赶紧记录下这个超实用的技能!

    一、初次接触WebView
    WebView自动化就像给程序装了个"网页浏览器",第一步得先学会加载网页

    [AAuto] 纯文本查看 复制代码
    import win.ui;
    import web.view;
    
    var winform = win.form(text="WebView自动化示例";right=759;bottom=469)
    
    var wb = web.view(winform); 
    wb.go("https://www.baidu.com")
    
    winform.show();
    win.loopMessage();



    运行这段代码时,屏幕上突然弹出一个带浏览器的窗口,百度网页自己就打开了!原来web.view就是那个"浏览器控件",wb.go()就像我们在地址栏输入网址一样。

    二、模拟点击
    试完加载网页,我又学了怎么让程序点击按钮。比如百度的"搜索"按钮,用这行代码就能搞定:

    [AAuto] 纯文本查看 复制代码
    wb.waitEle("#su","this.click()");

    完整代码是这样的:

    [AAuto] 纯文本查看 复制代码
    import win.ui;
    import web.view;
    
    var winform = win.form(text="WebView自动化示例";right=759;bottom=469)
    
    var wb = web.view(winform); 
    wb.go("https://www.baidu.com")
    winform.show();
    wb.wait()
    
    wb.waitEle("#su","this.click()");
    
    win.loopMessage();


    这里#su是百度搜索按钮的CSS选择器,this.click()就是模拟点击动作。

    三、让程序替我打字
    最让我惊喜的是程序还能在输入框里打字。比如在百度搜索框输入"aardio":

    [AAuto] 纯文本查看 复制代码
    import win.ui;
    import web.view;
    
    var winform = win.form(text="WebView自动化示例";right=759;bottom=469)
    
    var wb = web.view(winform); 
    wb.go("https://www.baidu.com")
    winform.show();
    wb.wait()
    
    var input = wb.cdpWaitQuery("#kw")
    
    wb.cdp("Input.insertText",{text="aardio"})
    
    win.loopMessage();


    #kw是百度搜索框的标识,Input.insertText就像手指在键盘上敲字一样。我试了试,程序输入的速度比我手敲快多了!

    四、挑战
    今天的挑战是组合所有技能:打开百度→输入"aardio教程"→点击搜索。写出的代码居然只有几行:

    [AAuto] 纯文本查看 复制代码
    import win.ui;
    import web.view;
    
    var winform = win.form(text="WebView自动化示例";right=759;bottom=469)
    
    var wb = web.view(winform); 
    wb.go("https://www.baidu.com")
    winform.show();
    wb.wait()
    
    var input = wb.cdpWaitQuery("#kw")
    
    wb.cdp("Input.insertText",{text="aardio教程"})
    
    wb.waitEle("#su","this.click()");
    
    win.loopMessage();


    看着程序一步步执行:网页打开→文字自动输入→搜索按钮自己点击,最后跳转到搜索结果页,我简直惊呆了!原来重复的网页操作真的能交给程序去做。

    五、总结
    今天最大的收获是发现WebView自动化就像给程序赋予了"网页操作能力"。那些我觉得繁琐的点击、输入动作,对程序来说只是几行代码的事。



    非业余 - aardio 编程语言 - 非官方问答社区
    风行者三期培训:Aardio+Python+Flutter,1000集课程让你成为全栈开发高手!https://mp.weixin.qq.com/s/_WOoHFtITUyLk2k7BXYGkg
    Aardio培训大揭秘,轻松上手打造个人项目!https://mp.weixin.qq.com/s/cr47qhp_Cpz0p57lbbPwug
    aardio风行者第二期培训班https://mp.weixin.qq.com/s/uB6XHUDnGSk0JlWuiBE9AA
    aardio风行者第三期培训班https://mp.weixin.qq.com/s/cdZcvFiAWhlYTaSrQGCPvA
    回复

    使用道具 举报

    *滑块验证:
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|非业余 - aardio 编程语言 - 非官方问答社区 知道创宇云防御

    GMT+8, 2025-6-7 06:28 , Processed in 0.115595 second(s), 30 queries .

    Powered by Discuz! X3.5

    © 2001-2025 Discuz! Team.

    快速回复 返回顶部 返回列表