Open XIU2 opened 3 years ago
我写脚本也遇到了这个问题,顺手补充一下 TamperMonkey 开发者的说明😵: https://github.com/Tampermonkey/tampermonkey/issues/296#issuecomment-222356524
首先感谢作者制作的脚本。
对部分脚本而言,有效的解决方法是,将插件安装在AdGuard中,可以看我下面的这个帖子,里面提到了一些安装在AdGuard里就有效的脚本:
https://github.com/the1812/Bilibili-Evolved/discussions/2362
我说的AdGuard是这个AdGuard for Mac,也就是客户端的版本,而非Safari插件的版本。这个是需要付费购买的,大概。几年前买的,好像是98元永久三设备使用,记不清了,反正国区很多商家有代理。(但是我在Mac1 + iPhone 1 + iPad *2上都可以用,这4台设备了) Catalina 10.15.7, Safari 14、15版本、AdGuard for Mac最新版确认有效 https://adguard.com/en/adguard-mac/overview.html
安装示例:
知乎页面显示效果:
这个方法有两个问题:
默认开启,如果想要关闭,请点击浏览器右上角的 Tampermonkey 扩展图标 [✅] 快捷回到顶部。
这种设置项在AdGuard里根本就看不到。所以最合适的是没有设置项的脚本,以及能在当前页面上有一个「设置⚙️」按钮,点一下能弹出设置菜单的脚本,或者是能通过某些快捷键,或者在调出功能菜单之后能显示设置按钮的脚本,比如:
这个csp问题可以用VPN拦截流量修改响应头来处理,另,别那么着急关闭#115issue啊
😂 我其实是希望作者改一下(各个)脚本,把按钮放在页面上,不过感觉这工作量大概挺大的……就不敢说 或者能不能出个教程说一下,怎么通过修改代码来修改各个设置项。
另外关于自动翻页无效的问题贴在之前的链接了,就是下面这一楼,其实是希望作者看到能回复一下是不是各个插件的实现方式不一样,我想如果能参照endless google的实现方式是不是就有效了
https://github.com/the1812/Bilibili-Evolved/discussions/2362#discussioncomment-1561786
@LoneFireBlossom 这没办法写教程。。。 而且设计一套新的脚本功能菜单确实挺麻烦,挺费时间的。
@LoneFireBlossom 这没办法写教程。。。 而且设计一套新的脚本功能菜单确实挺麻烦,挺费时间的。
用3楼 https://github.com/XIU2/UserScript/issues/107#issuecomment-955114887 的方法大部分装在AdGuard里的脚本也足够我使用了,所以也还好。知乎增强的默认设置对我来说也够用了。 AdGuard确实挺不错的,足以作为油猴的替补方案。就是我搜了一下网上无论中英文,似乎根本就没有一个总结一个脚本到底是装在油猴里合适还是AdGuard里合适的帖子,整得我以后每装一个插件都得想一次
好像AdGuard里安装的脚本会默认更新,就算我编辑了脚本它也会更新……(我怎么记得tempormonkey不是这样的。不过Safari的tempormonkey我是搞不懂它的更新策略,几个月都不见有更新。这里说的是chrome的) 所以如果编辑插件的话还是得顺带编辑一下@downloadURL,改成无法下载的那种应该就可以了。如果没有这一项就添加。
安装macaque后安装脚本可以在ios的safari运行了
使用 UserScripts 软件可以运行,iOS 和 macOS 的 Safari 均可。
目前 UserScripts 软件对 GM api 的支持还不完整,诸如 GM_registerMenuCommand
的 api 还无法使用。先不要更改帮助文档。
项目地址:https://github.com/quoid/userscripts
参见:https://github.com/Tampermonkey/tampermonkey/issues/296#issuecomment-732395145
首先感谢作者制作的脚本。
对部分脚本而言,有效的解决方法是,将插件安装在AdGuard中,可以看我下面的这个帖子,里面提到了一些安装在AdGuard里就有效的脚本:
我说的AdGuard是这个AdGuard for Mac,也就是客户端的版本,而非Safari插件的版本。这个是需要付费购买的,大概。几年前买的,好像是98元永久三设备使用,记不清了,反正国区很多商家有代理。(但是我在Mac1 + iPhone 1 + iPad *2上都可以用,这4台设备了) Catalina 10.15.7, Safari 14、15版本、AdGuard for Mac最新版确认有效 https://adguard.com/en/adguard-mac/overview.html
安装示例:
知乎页面显示效果:
这个方法有两个问题:
- 如上面的链接所说,我每个脚本都不知道到底安装在油猴更合适还是AdGuard更合适——或许一直都是AdGuard更合适?但是我不懂技术不清楚。但是也有一些安装在AdGuard里对Safari也无效的脚本,在上面的链接中也有提到。(另外,装在AdGuard for Mac中的话,插件也会同时作用于其它所有主流浏览器)
- 最大问题是,安装在AdGuard里的脚本,不像油猴一样可以点击油猴图标,在弹出的菜单中进行设置,比如
默认开启,如果想要关闭,请点击浏览器右上角的 Tampermonkey 扩展图标 [✅] 快捷回到顶部。
这种设置项在AdGuard里根本就看不到。所以最合适的是没有设置项的脚本,以及能在当前页面上有一个「设置⚙️」按钮,点一下能弹出设置菜单的脚本,或者是能通过某些快捷键,或者在调出功能菜单之后能显示设置按钮的脚本,比如:
这个方式挺好的,在Mojave这个系统下面也就这个办法了,新版系统好像有个叫user script的插件,不知道能否支持。
我使用 “知乎增强”脚本测试了,Macaque 在 macOS 和 iOS 下都可以正常运行脚本,Userscripts 不行。 这个问题困扰了我那么久,终于完美解决了。
我使用 “知乎增强”脚本测试了,Macaque 在 macOS 和 iOS 下都可以正常运行脚本,Userscripts 不行。 这个问题困扰了我那么久,终于完美解决了。
感谢,可惜试了试并不是支持所有脚本。例如「知乎重排for印象笔记」就不行。 https://greasyfork.org/scripts/372064-知乎重排for印象笔记/code/知乎重排for印象笔记.user.js
之前我也是用的 adguard 来驱动 Safari 下使用大佬的脚本,但是有些生效,有些不生效,很苦恼。 现在有一个新的 Safari 扩展,stay 2 ,推荐各位去下载。XIU 大佬的大部分脚本,都是可以直接Safari 下生效的~~
之前我也是用的 adguard 来驱动 Safari 下使用大佬的脚本,但是有些生效,有些不生效,很苦恼。 现在有一个新的 Safari 扩展,stay 2 ,推荐各位去下载。XIU 大佬的大部分脚本,都是可以直接Safari 下生效的~~
请教下你是怎么设置的,我用 stay 2 知乎增强没生效……
我写脚本也遇到了这个问题,顺手补充一下 TamperMonkey 开发者的说明😵: Tampermonkey/tampermonkey#296 (comment)
这个issue里有人说免费的Userscripts扩展能使用eval来绕开CSP,不过和装在AdGuard里一样不能设置
https://github.com/PhilGrayson/chrome-csp-disable
安装此插件解决 Chrome 浏览器 GitHub 无法翻页 (fix by disabling CSP)
但是上面那个插件需要你每次在当前 tab 点击插件启动然后刷新一下网页.
可以使用这个插件默认禁止 CSP 策略 https://chrome.google.com/webstore/detail/always-disable-content-se/ffelghdomoehpceihalcnbmnodohkibj
现在Safari的油猴已经支持知乎美化、知乎增强等脚本的基本工作了(我只把脚本打开,刷新页面简单看了一下)。 Safari Version 17.0 (18616.1.27.111.19, 18616) 【beta版,谷歌搜索直接到官网上下载即可。我不知道v16如何】 再比如网页限制解除(改)、github enhancement - high speed download、popup search也可以在以前不行的知乎、GitHub上使用。 目前发现的问题是这些按钮都没反应。
但是userscript+还不行,甚至以前在adguard里可以现在adguard都不行了。
使用Safari浏览器的小伙伴可以试试用代理工具Quantumult X 来去除网站的csp策略,比如github可以用这样的规则^https?://github\.com($|/.*) url response-header (\r\n)Content-Security-Policy:.+(\r\n) response-header $1Content-Security-Policy:$2
但是我不知道同样的写法对知乎没有用,有大佬知道为啥吗^https?://www\.zhihu\.com($|/.*) url response-header (\r\n)Content-Security-Policy:.+(\r\n) response-header $1Content-Security-Policy:$2
一直以来都有人反馈我的某个油猴脚本在 Safari 浏览器下无法访问,但是我多次远程协助也没找到原因(我没有 MAC 设备),直到刚才在热心人士的帮助下,经过测试研究,最后发现:
之所以 Safari 浏览器在部分网站下无法运行油猴脚本,均是因为这些网站配置了
Content-Security-Policy(内容安全策略)
。 在其他浏览器上,CSP 不会影响油猴脚本,因为浏览器扩展在插入油猴脚本时,会忽略网站的 CSP 策略。 但是 Safari 浏览器很奇葩的不与其他浏览器为伍,在浏览器扩展插入油猴脚本时会遵守网站的 CSP 策略,导致油猴脚本被阻止(显然这些网站不会将油猴脚本的路径加入 CSP 策略中)。查询搜索后发现,似乎目前没有任何方法可以在 Safari 浏览器上绕过/禁用 CSP 策略,因此凡是启用 CSP 策略的网站均无法在 Safari 浏览器上依靠扩展运行油猴脚本。 当然如果你有解决方法的话,欢迎在下面告诉我~