文章目录

  • 1、需求来源:
  • 2、开发者工具开发:
  • 3、油猴插件开发:
    • 1)、油猴学习:
    • 2)、可以自己找几个学习简单一下
    • 3)、我最终的脚本:
    • 4)、你可以选择新建
  • 4、注意点:
    • 1、油猴,run at 尽量早一点,早点注入代码【hook】
    • 2、@match:

1、需求来源:

我想查看豌豆荚的一个软件的历史版本,然后要一直点击。
点击了好多次还没有到底,好烦呀
然后想着能否用selenium自动的,然后想着用的有油猴插件,可以直接自动展开csdn的,然后去搜索豌豆荚,发展没有搜到直接现成的插件。

那就学习一波,开发一个简单的插件吧。

2、开发者工具开发:

查看元素,看看是否有固定id或者class

找到id,就可以使用dom操作了。
document
先在开发者工具里面看看能成功。

while (document.getElementById('j-refresh-btn'))
{document.getElementById('j-refresh-btn').click();
}

然后最终写成这个代码。
先在console执行看看效果。

发现这个时候可以了,加载完毕了。

3、油猴插件开发:

当然,这样还需要每次复制,打开开发者,也不是很爽,我想弄到油猴里面,这样就能一劳永逸了。

1)、油猴学习:

油猴论坛:https://bbs.tampermonkey.net.cn/
油猴官方开发文档:
https://www.tampermonkey.net/documentation.php#_run_at
油猴脚本在线下载:

Greasy Fork

2)、可以自己找几个学习简单一下

比如:
我这个是自动展开类,我就搜索到这个
阅读全文、自动展开全文、自动移除万恶弹框

其实直接下在一个插件代码,模仿着写就完了,我不需要完成太高级的,太高级也需要js什么的。

油猴里面的脚本其实就是其他自执行函数,函数里面根据需要自己写。

具体可以了解下hook。

3)、我最终的脚本:

因为我需要周期性检测,执行我的脚本,然后周期执行我的脚本。
最终脚本:

setInterval 是js的定时器功能,间隔指定时间执行一个函数。
我把我的展开脚本放入一个函数,周期性执行函数即可。

setInterval() - 间隔指定的毫秒数不停地执行指定的代码。
setTimeout() - 在指定的毫秒数后执行指定代码。

setTimeout只执行一次,我看好多人家展开脚本大多数是这个,我的和他们不同,我所有我选择setInterval周期性执行定时器。

js定时器学习参考

// ==UserScript==
// @name         豌豆荚自动展开所有版本:
// @namespace    http://tampermonkey.net/
// @version      1.0.0
// @description  豌豆荚自动展开所有版本:
// @author       zhaojiafu
// @match        *://*.wandoujia.com/*
// @grant        none
// @icon         https://csdnimg.cn/public/favicon.ico
// @run-at       document-start
// ==/UserScript==(function () {// 检查是否有更多 ID 'j-refresh-btn'function run(){while (document.getElementById('j-refresh-btn')){document.getElementById('j-refresh-btn').click();};};// 定时器,3秒检查一次setInterval(run,3000);})();

4)、你可以选择新建

新建脚本,把我的复制里面,然后就可以自动展开所以版本了。

以应用宝为例:

等待一会,访问地址,等待一会就可以了。

4、注意点:

1、油猴,run at 尽量早一点,早点注入代码【hook】

这个是注入js代码的时间,尽量早点注入,我的反正有间隔时间去检测,所以早点注入代码不影响的。

2、@match:

这个是正则匹配地址,我这个网站一定不能只写域名,我第一次匹配域名,解决搜索也是这样,导致卡死了。

// @match        *://*.wandoujia.com/apps/*

油猴脚本开发学习1--豌豆荚快速查看所有版本相关推荐

  1. [油猴脚本开发指南]脚本ajax的跨域请求

    转载自油猴中文网:bbs.tampermonkey.net.cn 李恒道QQ4548212 油猴中文网bbs.tampermonkey.net.cn TamperMonkey GreaseMonkey ...

  2. [油猴脚本开发指南]脚本自动化之模拟点击和表单填写

    转载自油猴中文网:bbs.tampermonkey.net.cn 李恒道QQ4548212 油猴中文网bbs.tampermonkey.net.cn TamperMonkey GreaseMonkey ...

  3. [油猴脚本开发指南]脚本往页面上添加新元素

    本节主要内容 转载自油猴中文网:https://bbs.tampermonkey.net.cn/ 李恒道QQ4548212 油猴中文网https://bbs.tampermonkey.net.cn/ ...

  4. [油猴脚本开发指南]h5视频倍速,时间加速和run-at

    转载自油猴中文网:bbs.tampermonkey.net.cn 李恒道QQ4548212 油猴中文网bbs.tampermonkey.net.cn TamperMonkey GreaseMonkey ...

  5. 记录一次油猴脚本开发的Demo(入门级)、开发过程

    记录一次开发油猴脚本的demo 前言:之前听别人讲油猴脚本怎么怎么地,怎么怎么样,一直以为是个很难的东西,所以在上周五的时候,就自己看了一下,这个东西也不太难.主要还是js玩的6就行了.当然了我的js ...

  6. Tampermonkey油猴脚本开发视频教程-3.脚本配置和权限申请UserScript

    视频和代码https://www.toolchest.cn/static/mv3.html 脚本头部2个"// ==UserScript=="之间编写脚本相关的配置信息和权限申请等 ...

  7. 【javascript】油猴脚本开发整理

    前言 油猴脚本有挺多用处,这玩意不用审核,可以做点效率工具. 文档 油猴官网 油猴插件发布搜索商店 油猴插件开发者文档 谷歌防csp插件 vercel用于部署api或者js 开发 开发简单的就直接上面 ...

  8. Chrome插件与油猴脚本

    Chrome插件与油猴脚本 简介 油猴脚本编写要点 简介 开发过Chrome插件的开发者,都会被Chrome插件的content,background(service),popup,inject 等各 ...

  9. 为了不手动命名驼峰变量名,我开发了一套油猴脚本...

    前言 你知道程序员最经常做的事是什么吗?是取变量名! 我们常规取变量名的方式是这样的,打开谷歌搜索或者有道搜索,输入变量的中文名,然后复制翻译结果,转到编译器改为驼峰命名,大致流程如下: 我个人对这种 ...

最新文章

  1. Listview获取选中行的值
  2. 【空间数据库】Windows操作系统PostgreSQL+PostGIS环境搭建图文安装教程
  3. 洛谷 P1219 ---- 八皇后
  4. 关于@property的一些用法
  5. mac json工具_工具类封装的思路 | 钉钉群机器人为例
  6. 导航菜单UI设计中的作用,优秀案例临摹起来!
  7. java aciss_C语言ACISS表.doc
  8. 直流稳压电源的设计与制作
  9. SQL Server-【知识与实战VII】存储过程(下)
  10. 【裂缝识别】基于matlab GUI路面裂缝识别(带面板)【含Matlab源码 009期】
  11. 施乐s2110进入维修模式_施乐进入维修模式步骤
  12. JavaScript数组你都掰扯不明白,简历上你敢写精通JavaScript?
  13. 电量统计(2)-日志
  14. Google工具栏(转)
  15. 【算法笔记】三种背包问题——背包 DP
  16. uniapp 自制头部左侧胶囊组件
  17. 【考研英语】词汇积累(详细全面,2023最新版)
  18. Javascript-蔬菜运算价格
  19. 网络管理员资料 网络命令行的使用和范例
  20. 服务器架设了网站还能架设游戏吗,云服务器可以架设游戏吗

热门文章

  1. 荣耀手机动态修改电池数据
  2. 计算机图形学空间曲线,部分计算机图形学参数曲线和曲面.ppt
  3. matlab文件在桌面,使用Matlab进行桌面截图
  4. 【建议推广!自制微信好友清理器】使用Python清理僵尸用户
  5. Android绘图(四)阴影、渐变和位图运算处理
  6. 花开--HashMap系列之红黑树篇(二)
  7. 2021-5-10 记录一次java-word模板由域代码导致的导出功能问题定位
  8. 如何开一个高效的会议?
  9. ignored pom
  10. python和小爱同学_小爱mini与小爱同学除了外观,还有什么较大的区别?