去除链接重定向

能原地解析的链接绝不在后台访问,去除重定向的过程快速且高效,平均时间在0.02ms~0.05ms之间。几乎没有任何在后台访问网页获取去重链接的操作,一切都在原地进行,对速度精益求精。去除网页内链接的重定向,具有高准确性和高稳定性,以及相比同类插件更低的时间占用。

Автор
Meriel Varen
Щоденних встановлень
50
Всього встановлень
630
Рейтинги
6 0 0
Версія
2.2.6
Створено
30.12.2023
Оновлено
12.07.2024
Ліцензія
MIT
Відноситься до

脚本优势

很多同类插件在解决诸如bing,搜狗等对重定向链接进行加密的情况时,采取的方法是插件在后台模拟你本人点击链接,等到在后台它重定向结束得到最终链接后,再帮你贴到当前页面上来,这样你就能点击到去重后的链接了。然而这样是非常缓慢的,并且和网速强关联,有可能你在当前网页已经浏览到很下面了,后台还没结束上面链接的操作过程,此时你仍然会点击到重定向链接。在本插件中,凡是能够将加密链接解析或用未加密链接替代的情况,一律优先解析而不会在后台访问,这使得本脚本在很多时候加载速度相较于同类型脚本有巨大提升

去除链接重定向

去除各搜索引擎/常用网站的重定向

注意事项:

重定向一般有两种目的

  1. 追踪用户打开了哪些 URL(bing的/ck/重定向就属于这一种)
  2. 在用户跳转到站外之前进行确认地址,防止打开不明的页面(知乎的“您正在跳转到其他页面”就属于这一种)

在使用脚本东方永页机时,如果遇到没有去除重定向的问题,请尝试右击屏幕右侧的侧边栏开启“动态加载”

脚本特点

  1. 链接反重定向的高准确性和高稳定性,以及相比同类插件更低的时间占用,平均时间在0.02ms~0.05ms之间
  2. 适配诸如东方永页机一类的瀑布流插件,不会出现第二页及之后的页没有移除链接重定向的问题
  3. 没有多余的onHover操作判断,没有setInterval间隔执行的操作
  4. 可自定义自己添加的站点逻辑,或是反映在GreasyFork反馈区内,或是下面的github反馈区链接
  5. 采用直接恢复到重定向前的原链接的逻辑,而不是进入跳转页面后自动跳转,优化用户体验

反馈问题 / 支持新站点

反馈问题或支持新站点请带上网页地址,谢谢

如果这能够帮助到你, 请不吝给github项目点一个 star, 你的支持就是我更新的动力,感谢🙏

工作原理

  1. 根据 URL 上暴露出来的跳转链接,正则匹配提取真实的地址,例如知乎,Google
  2. 如果 A 标签的内容为真实的地址,则替换,例如百度贴吧
  3. 逐一发送请求,获取真实的地址,例如百度搜索
  4. 根据请求特殊页面,这个特殊页面没有重定向地址,然后覆盖当前页,例如百度搜索,搜狗搜索
  5. 覆盖原本的链接点击事件,比如 qq 邮箱

支持的站点

  • ✔️ 必应国内版
  • ✔️ 必应国际版
  • ✔️ 知乎
  • ✔️ 知乎专栏
  • ✔️ 知乎日报
  • ✔️ Google 搜索
  • ✔️ Google 文档
  • ✔️ Google Play
  • ✔️ Google Gmail
  • ✔️ Google Youtube
  • ✔️ Steam
  • ✔️ 360 搜索
  • ✔️ 新浪微博
  • ✔️ Twitter
  • ✔️ 搜狗搜索
  • ✔️ 百度搜索
  • ✔️ 百度视频
  • ✔️ 百度学术
  • ✔️ 百度贴吧
  • ✔️ 掘金
  • ✔️ QQ 邮箱
  • ✔️ Mozilla
  • ✔️ 简书
  • ✔️ 豆瓣
  • ✔️ Pocket
  • ✔️ CSDN
  • ✔️ 开源中国
  • ✔️ 印象笔记
  • ✔️ 标志情报局
  • ✔️ 爱发电
  • ✔️ 51 CTO
  • ✔️ InfoQ
  • ✔️ Gitee
  • ✔️ 少数派
  • ✔️ 如有乐享

贡献代码

需要通过 NodeJs / Deno / Bun 把 TypeScript 编译成 javascript
其中/目录下的remove-link-redirects.js是我根据webpack打包得到的js文件自行重写的可阅读的js文件,目前发布的也是这个版本
/dist/目录下的去除链接重定向.user.js是webpack自动打包生成的单文件js

git clone https://github.com/MerielVaren/remove-link-redirects.git

cd ./remove-link-redirects

npm install
npm run build