武器装备
js代码下载(最强无套路脚本,公开免费文档下载)

你好,我是坚持分享干货的 EarlGrey,翻译出版过《Python编程无师自通》、《Python并行计算手册》等技术书籍。


如果我的分享对你有帮助,请关注我,一起向上进击。

脚本地址:https://greasyfork.org/zh-CN/scripts/486211

这是一个用于 Tampermonkey 或其他支持用户脚本的浏览器扩展的油猴脚本。

看到论坛经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决您的烦恼而诞生,尽可能做到自动化。

安装

  1. 安装 Tampermonkey 浏览器扩展。
  2. 点击 脚本链接 或手动复制脚本代码。
  3. 在 Tampermonkey 中创建一个新脚本,将代码粘贴到编辑器中并保存。

原理说明

一般在线文档有以下几种方式展示在线文档预览功能:

  1. 将图片绘制成画布呈现
  2. 将二进制数据绘制画布
  3. 多种图片拼接页面渲染
  4. 直接图片渲染页面

所以该脚本只是将画布或图片在浏览器渲染时进行下载拼接成PDF文件,无法下载原始文件,并非破解,只要是你浏览器可以看到就可以下载。_宗旨就是你能看到多少,就能下载多少。_

核心技术点解决一个文档由多个域名提供图片,解决跨域问题。

以上两个文档库中的文档,大部分文档都是来自好几个域名,并且有跨域问题,也就是说如果在当前页面通过Javascript直接下载图片会产生跨域问题,这也是为什么网上其他脚本针对这两个网站只能提供图片下载地址,不能直接下载的根本原因。

解决跨域最简单的办法就是同源,在脚本中动态添加 iframe元素,通 iframe 内联元素框架打开当前图片所在域名,将需要下载的图片当 iframe 页面内下载,再通过 postMessage 方法将Blob 数据传回主页面进行保存。

当然也许有其他更好的办法解决,此脚本只是基于Javascript进行处理,不借助额外第三方工具(下载,合并等exe文件)处理为前提。

最强无套路脚本,公开免费文档下载nerror="javascript:errorimg.call(this);"/>
时序图

平台/功能


顶一下()     踩一下()
发表评论
0评