当前位置: 首页 > news >正文

【网页自动化】篡改猴入门教程

安装篡改猴

  1. 打开浏览器扩展商店(Edge、Chrome、Firefox 等)。
  2. 搜索 Tampermonkey 并安装。
    1. 如图
  3. 安装后,浏览器右上角会显示一个带有猴子图标的按钮。

    

创建用户脚本

  1. 已进入篡改猴管理面板
  2. 点击创建

脚本注释说明

  • @name:脚本名称。
  • @namespace:脚本唯一标识,可随意设置。
  • @version:脚本版本。
  • @description:脚本描述。
  • @match:脚本运行的网页 URL 模式(支持通配符 *)。
    • 示例:https://example.com/* 表示脚本在所有 example.com 的页面运行。
  • @grant:声明权限。
    • none:不使用任何特殊权限。
    • 可用权限:参考Tampermonkey 文档。

保存并测试脚本

  • 在编辑器中,按 Ctrl+S 或点击保存按钮。
  • 打开与 @match 中 URL 对应的网页。
  • 打开开发者工具(F12),在控制台查看脚本日志,确保脚本正常运行。

进阶操作

定时任务

通过 setIntervalsetTimeout 实现定时操作:

// 每 5 秒执行一次
setInterval(() => {console.log('定时任务执行中...');const button = document.querySelector("#buttonID");if (button) button.click();
}, 5000);

动态URL匹配

使用正则表达式匹配多种 URL:

// ==UserScript==
// @match        https://*.example.com/*
// @match        https://another-site.com/page/*
// ==/UserScript==

高级权限

通过 @grant 使用更多功能,如跨域请求或本地存储:

// ==UserScript==
// @grant GM_xmlhttpRequest
// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==// 示例:跨域请求
GM_xmlhttpRequest({method: 'GET',url: 'https://api.example.com/data',onload: function(response) {console.log('数据加载成功:', response.responseText);}
});

示例:自动登录脚本

// ==UserScript==
// @name         自动登录
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  自动填写用户名和密码并登录
// @match        https://login.example.com/*
// @grant        none
// ==/UserScript==(function() {'use strict';// 自动填充用户名和密码const usernameField = document.querySelector("#username");const passwordField = document.querySelector("#password");const loginButton = document.querySelector("#loginButton");if (usernameField && passwordField && loginButton) {usernameField.value = "myUsername";passwordField.value = "myPassword";console.log("用户名和密码已填写");// 自动点击登录按钮loginButton.click();console.log("登录按钮已点击");}
})();

http://www.lryc.cn/news/516156.html

相关文章:

  • 【顶刊TPAMI 2025】多头编码(MHE)之极限分类 Part 4:MHE表示能力
  • Github - unexpected disconnect while reading sideband packet
  • Ubuntu 环境安装 之 RabbitMQ 快速入手
  • UE5中实现右键开镜效果
  • Apache HTTPD 换行解析漏洞(CVE-2017-15715)
  • Excel重新踩坑5:二级下拉列表制作;★数据透视表;
  • 力扣--35.搜索插入位置
  • C# 设计模式(行为型模式):模板方法模式
  • Leetcode打卡:设计一个ATM机器
  • 【TCP】SYN、ACK、FIN、RST、PSH、URG的全称
  • 【OceanBase】使用 Superset 连接 OceanBase 数据库并进行数据可视化分析
  • 【通识安全】应急救护常识23则
  • C语言:cJSON将struct结构体与JSON互相转换
  • 在Linux中,如何查看和修改网络接口配置?
  • 使用深度学习来实现图像超分辨率 综述!
  • 基于深度学习的视觉检测小项目(六) 项目的信号和变量的规划
  • 【Android项目学习】3. MVVMHabit
  • 在Linux中,如何配置负载均衡器以分配网络流量?
  • 手机投屏到电视的3种选择:无线本地投屏,无线远程投屏,AirPlay投屏
  • MySQL关联关系理论与实践
  • 多模态论文笔记——U-ViT(国内版DiT)
  • 在 IntelliJ IDEA 中开发 GPT 自动补全插件
  • 7. C语言 运算符详解
  • Java四大常用JSON解析性能对比:Hutool、Fastjson2、Gson与Jackson测试
  • Qt 5.14.2 学习记录 —— 일 新项目
  • uni-app:实现普通选择器,时间选择器,日期选择器,多列选择器
  • Unity3D仿星露谷物语开发17之空库存栏UI
  • QT------模型/视图
  • Git - 记录一次由于少输入了一个命令导致的更改丢失
  • nodeJS下npm和yarn的关系和区别详解