saber 酱的抱枕

Fly me to the moon

07/29
2021
软件

使用 Netlimiter 限制软件的下载和上传速度

使用 Netlimiter 限制软件的下载和上传速度
Netlimiter 是一款 Windows 上的网络监控软件,我们可以使用它来查看应用程序的网络活动,并且可以作出限制,例如限制上传和下载速度,拦截上传或下载,设置流量额度,设置优先级等。
上图限制了百度网盘的下载速度。在软件窗口的左侧点击你要操作的程序,然后点击右侧“规则”下的“未设置”区域,就可以修改设置了。
Netlimiter 官网
这款软件是收费的,不收费的办法请自行百度。

使用 Netlimiter 限制软件的下载和上传速度

04/13
2021
软件

图片搜索,以图搜图工具 SmartImage

以图搜图工具 SmartImage

有时我们会使用一些搜图网站,比如搜三次元图片经常用谷歌搜图,搜二次元图片用 saucenao 或者 iqdb

这些工具给我们带来了很大的便利,但是我们也会有更多的需求,例如:

  1. 更便捷的搜索体验(不用打开它们的网站就能直接搜图),有一些浏览器扩展程序可以在网页图片上右键,直接以图搜图。
  2. 电脑上存了很多要搜索出处的图片时,一个个上传、搜索,重复操作太多,效率低。(好像没有扩展程序能批量上传本地图片进行搜图)
  3. 搜图网站会返回数个结果网站(如 pixiv、danbooru、yande 等),我们需要手动选择一个结果来查看。如果可以直接打开最佳匹配结果会方便很多。

今天我在 Github 找到了个程序 SmartImage,用起来很方便。它是一个 Windows 可执行程序,可以在右键菜单里添加一个菜单项。我们在图片上右键,选择这个菜单项,就可以直接上传图片进行搜索,并自动打开最佳匹配结果。

当你在电脑上保存了很多需要搜图的图片时,这个工具可以大大提高效率。接下来上简单的使用说明。

Read More →

图片搜索,以图搜图工具 SmartImage

03/16
2021
软件

JS 的 MD5 库

最近做一个网站的下载器,发现它的请求头有个标记 sign,是对字符串进行 MD5 加密产生的 hash,所以我就找了个 JavaScript 的 MD5 库。

https://github.com/pvorb/node-md5

这个库主目录下的 md5.js 文件是 NodeJS 环境使用的,dist 目录里的 js 文件是浏览器环境里使用的。

吐槽下这个网站,不知为何它没有用 HTTPS,估计是因为这个原因所以搞了个 sign 验证。但是 sign 的计算是在前端做的,我直接从它的 js 源码里找到了加密算法,就像这样:

const key = 'asdasddsa'
const time = Date.now()
const sign = md5(key + time)

用一个固定的字符串做秘钥,加上发起请求时的时间戳生成 md5 作为 sign。(请求头里同时也要携带这个时间戳,服务器端再做验证)。不仅秘钥可以直接看到,而且时间戳也由我提供,我寻思这加密是加了个寂寞……

JS 的 MD5 库

11/12
2020
软件

使用 prismjs 高亮 markdown 渲染出的代码

markdown 里的代码块用三个斜线包裹,可以指定代码的语言。如下

```javascript
let result = new Array(20).fill(0)
```

当 markdown 转换成 html 显示时,上面的写法会渲染出 pre 和 code 标签,并且 class 里带有语言信息:

但是此时代码并不会自动高亮。有个叫做 Prism 的 js 库经常被用来高亮 markdown 在 html 渲染出的代码。

Read More →

使用 prismjs 高亮 markdown 渲染出的代码

10/29
2020
软件

给 Pixiv Batch Downloader 制作了新的 Wiki

Pixiv Batch Downloader Wiki 地址:https://xuejianxianzun.github.io/PBDWiki/

文档使用 Markdown 编写,用 docsify 动态生成 html 页面,部署在 Github pages 上。

制作过程比我预想的要顺利,特别是 docsify 这个库很方便,简单的配置就可以生成文档页面,我可以专注于编辑文档,真是太棒啦!

给 Pixiv Batch Downloader 制作了新的 Wiki

10/8
2020
软件

Chrome 扩展在开发者模式下可以读取任意本地文件

如果我们把一个本地文件夹拖到浏览器里打开,大部分浏览器应该都会显示里面的文件和文件夹。就像这样:

这样的地址是本地文件协议,url 如:
file:///C:/
如果可以通过在浏览器里运行 js 代码,请求本地文件的 url,并且可以任意遍历、读取文件(也就是全盘扫描了),那太可怕了。
我的常识告诉我,浏览器出于安全原因肯定会阻止这一行为,所以这应该是不可行的。在普通的网页里请求本地文件确实不可行,但是在浏览器扩展的后台脚本里呢?今天 Reinford 告诉我在后台脚本里可以任意请求本地文件,我试了下还真可以。

Read More →

Chrome 扩展在开发者模式下可以读取任意本地文件

09/19
2020
软件

Pixiv 批量下载器的教程视频

【超强大】Pixiv批量下载器,图片,动图,小说一键下载!手机电脑都可用!

我在 bilibili 发了教程视频:https://www.bilibili.com/video/BV1g54y1v7nV

【超强大】Pixiv批量下载器,图片,动图,小说一键下载!手机电脑都可用!

Powerful Pixiv Downloader 是一个强大的 Pixiv 批量下载器,你可以使用它快速下载图片、动图、小说。
它支持多种页面类型,可以设定多种筛选条件,可以自动建立文件夹保存文件。
支持断点续传和增量更新。
它也有很多便捷功能,如去除广告、快速收藏、图片查看器、批量添加 tag 等。
它是一个浏览器的扩展程序,在电脑上使用 Chrome 浏览器或者 Edge 浏览器安装,在手机上使用 Yandex 浏览器安装。

Pixiv 批量下载器的教程视频

09/2
2020
软件

Chrome 扩展允许任意跨域的办法

浏览器里是不允许跨域的,如果服务器没有指定 Access-Control-Allow-Origin 字段,那么浏览器会阻止向服务器发起的任何跨域请求。

如果服务器指定了 Access-Control-Allow-Origin,则浏览器会根据它的设置,只允许它指定的那些域名进行跨域请求。

特别的,如果 Access-Control-Allow-Origin 的值是 *,表示服务器接受任意跨域请求。

以前,如果我们制作了一个 Chrome 扩展,它的前台、后台代码都可以无视跨域限制,因为扩展有特权嘛。但是从 Chrome 85 开始,扩展的前台不允许跨域了,只允许后台跨域。

但是后台可以修改网络请求,我们给每个请求的 response headers 都添加 Access-Control-Allow-Origin : *,那么前台发出的所有请求都可以跨域。

Read More →

Chrome 扩展允许任意跨域的办法