PixivBatchDownloader Versions Save

Chrome 扩展,批量下载 Pixiv 的插画和小说。过滤作品、下载时重命名、转换动态图片等。Powerful Pixiv batch downloader. Batch download artworks and novels, filter works, rename when downloading, convert animated images, and more.

v16.1.0

9 months ago

✨新增设置项:在多图作品页面里,显示缩略图列表

这个功能很早就有了,就是多图作品页面里,大图下方显示的一横排缩略图列表。只是以前不能关闭,现在加了个开关可以关闭了。

🐛修复了“显示更大的缩略图”的一些问题

修复了在作品页面内收藏作品后,显示的“推荐作品”的图片无法完全显示的问题。现在将其保持为原大小。

🕑更新了作品发布时间数据

v16.0.4

9 months ago

🐛修复了一个提示可能意外出现的问题

上版本增加的提示 可能发生了错误。请刷新页面重试 可能会意外出现,并且日志里可能会多次出现。现在修复此问题。

v16.0.3

9 months ago

修复了“显示更大的缩略图”的一些问题

  1. 修复了缩略图没有完全显示的问题(之前固定了最大宽度,导致图片两侧可能被裁切)
  2. 修复了首页“推荐作品”显示不全的问题(之前没有让里面的元素换行,所以只显示了一行)
  3. 修复了点击顶部的搜索框,下拉区域里的大图错乱的问题。这里容器固定了宽高,如果显示大图的话只能显示出一部分

尝试检测正常下载时卡住的情况

https://github.com/xuejianxianzun/PixivBatchDownloader/issues/338

下载时进度条卡住,有多种可能的原因,有一种可能情况似乎是 Chrome 自己的下载管理功能出问题了,这种情况下它不会向前台脚本返回信息,所以进度会卡住。

尝试检测这种情况:向浏览器发送下载后 3 秒如果没有收到回应,就提示刷新页面重试。

更新了作品发布时间数据

其他

增加了一个隐藏命令 ppdtask3,输入命令可以打开所有的测试页面,目前共 21 个页面。

v16.0.2

9 months ago

修复了“显示更大的缩略图”失效的问题

v16.0.1

9 months ago

修复了一些用户在批量关注用户时,遇到 400 错误的问题

有些用户在添加关注时需要附带一个特殊的 token,如果缺少就会导致 400 错误。

下载器无法解决此问题,目前使用 iframe 方法模拟点击来关注用户。此方法存在如下问题:

  1. 内存占用大,添加到 120 个左右就可能导致 Out of Memory。
  2. 在超出内存之前就很容易因为 fetch 被取消而导致页面卡死。
  3. 花费的时间比较久。

详情参见:notes\recaptcha_enterprise_score_token 添加关注的用户时的验证码.md

为了解决遇到的一些问题,花了很长时间。

其他优化

批量关注用户时,添加 1000 个关注之后下载器会自动停止,以免用户被 Pixiv 封号。

详情参见:notes\批量关注用户太频繁导致账户被封禁限制.md

修复了一些页面里,显示更大的缩略图异常的问题

Pixiv 原本的中间区域不是全宽的,显示更大的缩略图功能会加宽。

最近在首页和其他某些页面里加宽或放大图片失效了,现在修复。

更新了作品发布时间数据

v16.0.0

10 months ago

新增功能:导出关注的用户列表(JSON)

在你或其他用户的 Following 页面里,你可以导出关注的用户列表。

新增功能:批量关注用户(JSON)

选择“导出关注的用户列表(JSON)”生成的 JSON 文件,下载器会读取里面的用户列表,然后关注他们。


这两个功能是搭配使用的。你可以先导出,然后导入来批量关注用户。

当你有多个帐户时,可以使用这个方法同步你关注的用户列表。

你也可以复制其他用户的关注用户列表。

注意: 下载器在批量关注用户时,会设置时间间隔以避免因 429 错误导致关注失败,但是这不能百分百避免 429 错误。如果执行完毕后,你发现已关注数量少于预期,可以再次导入列表以进行批量关注。

批量关注之前,下载器或先获取一遍你的关注列表,已经关注过的就不需要重复发送关注请求了,节约时间。

新增功能:导出与导入 ID 列表

除非你明白自己的目的,否则不应使用这个功能。

这是为了解决 429 问题进行的尝试,因为未登录时不会触发 429 错误,所以可以退出登录然后高速抓取。但是它有很大的局限,不是完美的。

这个方法的操作步骤如下:

  1. 在“更多”-“下载”里开启设置项“获取 ID 列表完毕后导出它,并停止抓取”
  2. 开始抓取,当获取到全部 ID 列表后,下载器会导出一个 JSON 文件,并停止抓取
  3. 退出登录(或使用另一个未登录 Pixiv 的浏览器),然后打开 Pixiv 首页
  4. 点击“导入 ID 列表”按钮,即可进行高速抓取。

局限:

  1. 因为未登录,对于插画作品,不仅无法抓取到 R18(G) 作品的数据,就算不是 R18(G) 但是有少许色情元素的作品也不能抓取。(sl 值为 4 或 6 的,或 R18 的,返回数据里的 urls 都是 null,无法获取到图片网址)。只能获取到普通且健全的作品的数据。
  2. 因为未登录,对于小说作品,无法抓取到 R18(G) 作品的数据(404)。普通作品都可以抓取。
  3. 因为未登录,所以无法检查作品的收藏状态,不能使用“收藏状态”过滤选项。
  4. 因为未登录,你在 Pixiv 账户设置里的屏蔽(Mute)用户或标签的功能也不会生效。

适用场景:

  • 适合要抓取的作品全部是普通(全年龄)并且没有色情元素的作品时使用。特别是抓取全年龄小说时最合适。
  • 适合大量抓取时使用。少量抓取(几百个)的话没必要用这个方法。
  • 不能检查收藏状态,也不能使用“下载后收藏”功能。

控制导出的 JSON 文件的体积小于 512 MB

当下载器的抓取结果很多时,导出的 JSON 文件的体积可能大于 512MB,这会导致导入到下载器时失败。

现在下载器导出的 JSON 文件体积上限是 500 MB。如果总数据量超过这个体积,就拆分成多个文件。

用户未登录时不获取屏蔽设置(Mute)

之前如果用户未登录,下载器获取屏蔽设置(Mute)会失败(401)),并且 Mute 模块会抛出错误导致抓取中止。

现在下载器会检查用户是否登录,如果未登录则不会获取屏蔽设置。

而且即使请求发生错误,下载器也可以继续抓取。

“显示更大的缩略图”功能改为默认开启

这个功能开启后会导致首页“关注用户・好P友的作品”区域的横向滚动出现异常,发现页面里似乎也有同样问题,其他地方没有问题。

之前因为上述问题,这个功能是默认关闭的,现在改为默认开启。

更新了作品发布时间数据

v15.9.0

10 months ago

添加了“停止抓取”按钮

当用户点击“开始抓取”按钮后,“停止抓取”按钮会显示出来。点击它就可以停止抓取。

如果点击时已有抓取到的作品,则会保留此时的抓取结果以供下载。

添加屏蔽设置(Mute)的提示

在这里可以看到用户屏蔽的标签和用户:

https://www.pixiv.net/setting_mute.php

下载器会检查这里的设置,但是之前没有在日志上显示提示,现在会提示里面的屏蔽设置(如果有)。

修复了下载小说内嵌图片时的 bug

小说里一张内嵌插图被多次调用时(也就是重复出现时),下载器生成的 EPUB 文件里只会把第一次调用替换为图片。现在可以把后面的调用也替换为图片了。

https://github.com/xuejianxianzun/PixivBatchDownloader/issues/334

修复了手动选择作品时无法点击收藏按钮(红心)的问题

在搜索页面预览抓取结果时,始终按收藏数量排序

当处于搜索页面,并且启用了“预览搜索页面的筛选结果”时,不使用“文件下载顺序”里的排序结果,而是始终按收藏数量排序。

更新了作品发布时间数据

v15.8.0

10 months ago

优化:批量收藏作品时减慢速度,以减少 429 错误发生的概率

短时间内添加大量的收藏也会引起 429 错误。下载器在一些情况下会批量添加收藏,之前没有在收藏之间添加间隔,容易引发 429 错误,现在添加了慢速收藏机制,每 2 秒发起一个收藏请求。

优化:当翻译后的标签是英文时,优先使用原标签

https://github.com/xuejianxianzun/PixivBatchDownloader/issues/313

Pixiv 会把有些中文标签翻译为英文,这导致用户使用 {tags_transl_only} 保存翻译后的标签时,反而会得到英文,例如:

原神 Genshin Impact
神里綾華 Ayaka Kamisato
八重神子 Guuji Yae
明日方舟 Arknights
史尔特尔 Surtr

现在进行了优化,如果中文标签被翻译成了英文,那么下载器会保存中文标签。

优化移动端界面

在一些宽度较小的手机上,下载器的按钮不能并排,现在改成可以并排 2 个。

可以应用搜索页面的 AI 过滤条件

Pixiv 在搜索页面的过滤条件中添加了 “AI 作品”设置,查询字符串名字是 ai_type,如果 ai_type=1 则表示隐藏 AI 作品。 现在下载器在抓取时可以应用此过滤条件了。

修复 bug

v15.7.0

11 months ago

优化了在移动端浏览器的使用体验

之前下载器在移动端浏览器(如 Kiwi 浏览器)上使用时,有些功能不能正常使用,而且下载器的界面也不能完整显示。

现在修复了这些问题。

具体可以查看 notes/对移动端浏览器进行优化.md

更新了作品发布时间数据

v15.6.2

11 months ago

修复一些用户的“高亮关注的用户”显示效果异常的 bug

一些用户的 pixiv 页面处于夜间模式时,被高亮的用户名可能同时具有黄色背景和黄色字体颜色。

这是错误的,此时不应该具有黄色背景。

原因是下载器之前依赖 html 标签上的特定属性来判断页面处于普通模式还是夜间模式,但是现在我发现当 html 标签上没有任何属性时,既有可能是普通模式,也有可能是夜间模式。所以有时候下载器设置的高亮效果就会出现错误。

现在下载器在 html 标签上添加了自定义的属性,解决了判断不准确的问题,修复了这个 bug。