调研油猴插件

1. 介绍

方便用户往网页里注入js、dom元素。提供一些扩展api方便 js 开发,但看起来 api 也没有很强大?

https://zhuanlan.zhihu.com/p/68617837
https://zhuanlan.zhihu.com/p/526202304

1.1. 和写浏览器插件有什么区别?

直接开发chrome插件也能实现“往网页里注入js和css”。为什么开发油猴插件的朋友不直接开发chrome插件,而要借油猴的壳?为什么用户不直接用 chrome 插件?

对于用户:hack 生态

对于用户来说,最吸引人的地方是社区有大量现成的脚本,其中很多脚本比较 hack,不太可能上架到 Chrome插件市场(因为可能有法律问题)

对于开发者

https://www.zhihu.com/question/319354276
https://www.zhihu.com/question/319354276/answer/645656735

  1. 跨平台(跨浏览器)
  2. 绕过麻烦的审核
  3. 开发更简单,比如:
  • 扩展的项目结构也比直接写个脚本麻烦,你要写清单,分离前后台脚本,设计 logo。开发时间长,调试比脚本麻烦。

个人觉得这个问题还好,因为作为开发者,完全可以弄个chrome 插件的壳、把项目结构和logo之类的都搭建好,有新需求时随时往里面塞自己的js脚本,不必再考虑项目结构问题。

  • 能选择直接注入到页面(通过@grant none),而不是在隔离环境中运行

这个问题确实麻烦,比如chrome插件没法获取网页里的js变量时,比如通过麻烦的机制和网页通信
如何实现网页和Chrome插件之间的通信
https://www.cnblogs.com/parker-yu/p/9046463.html

  • 跨域请求

在油猴脚本中你可以引用网络脚本来使用 axios 之类的网络请求模块,这很方便,但同样也产生了局限性,例如由于浏览器机制的限制,你无法直接在网页上进行没有被事先允许的跨域请求
这时建议使用 GM.xmlHttpRequest,同时你应当在元数据用// @connect 声明允许被 GM.xmlHttpRequest 访问的域名
https://www.quchao.net/Tampermonkey.html/comment-page-1

1.2. 脚本推荐

https://zhuanlan.zhihu.com/p/68617837
https://www.bilibili.com/video/BV1rR4y1V76U?spm_id_from=333.1007.top_right_bar_window_custom_collection.content.click&vd_source=0771a43f57c2ba3078c77e780c9c5e2f

一个 idea: 感觉适合弄个“插件集”、“插件模板”,类似于spring boot 的脚手架思想,提供默认的插件配置,让用户无需折腾调研插件。比如叫"GM-weibo-bootstrap","GM-zh-bootstrap".

1.3. 手机安装

https://blog.zhheo.com/p/88a92338.html

2. 脚本开发

如何开发一个油猴脚本- 从零开始编写一个油猴脚本

https://blog.csdn.net/qq_34518674/article/details/121380977

油猴脚本编写教程

https://www.xbext.com/docs/user-script-overview.html

你可能感兴趣的:(调研油猴插件)