上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

自动登录脚本的问题

[复制链接]
  • TA的每日心情
    奋斗
    2024-9-3 01:32
  • 签到天数: 46 天

    [LV.5]常住居民I

    3

    主题

    6

    回帖

    32

    积分

    助理工程师

    积分
    32
    发表于 2024-5-26 13:11:56 | 显示全部楼层 | 阅读模式
    悬赏5油猫币未解决

    我现在想做一个自动登录的脚本,但是我遇到了一点问题。
    我在监听load的时候触发回调函数执行fillForms

    window.addEventListener("load", () => {
        const currentURL = window.location.href;
        if (currentURL.includes("https://xxx.com/login")) {
          fillForms(getRandomAccount());
        }
      });

    这是fillForms函数的逻辑

    function fillForms(account) {
        document.querySelector('input[name="username"]').value = account.username;
        document.querySelector('input[name="password"]').value = account.password;
        let submitbutton = document.querySelector('button[type="submit"]');
        console.log(submitbutton);
        console.log(submitbutton.click);
        if (submitbutton) {
          console.log(submitbutton);
          submitbutton.click();
        }
    
        // setTimeout(() => submitbutton.click(), 1000);
    
        localStorage.setItem("account", account);
      }

    其中页面执行脚本后,submitbutton的节点可以正常输出,但是我的登录页面并不会跳转,我怀疑它没有执行click函数,所以我在注释里面使用延时函数去触发click事件,结果延时触发页面发生了成功跳转登录成功了,为什么呢?我的代码该做怎么样的改进才能直接去触发click事件,而不需要使用延时函数

  • TA的每日心情
    慵懒
    2024-10-28 07:07
  • 签到天数: 193 天

    [LV.7]常住居民III

    712

    主题

    5959

    回帖

    6758

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6758

    荣誉开发者喜迎中秋油中2周年生态建设者

    发表于 2024-5-26 20:50:24 | 显示全部楼层
    页面延迟加载的问题https://learn.scriptcat.org/%E5% ... E8%AF%AF%E5%8C%BA1/

    最常用的就是setinteval循环查看

    再往上可以用addeveterlistner监听DomInserted事件,但是存在延迟,目前更普遍的是使用MutationObserve
    https://learn.scriptcat.org/%E5% ... %E7%9F%A5%E8%AF%86/

    在此之上更推荐cxxjackie大佬封装的ElementGetter 库
    https://bbs.tampermonkey.net.cn/thread-2726-1-1.html


    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
    回复

    使用道具 举报

    发表回复

    本版积分规则

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