站点图标 嘟嘟

Pxder:P站(Pixiv)插画批量下载器

简介

本下载器可按根据指定画师UID解析并下载插画(包括动图)、一键下载所有你关注的画师的插画或收藏的插画、智能增量更新下载过的画师的插画。

安装

Github地址:https://github.com/Tsuk1ko/pxder

说明:该工具支持全平台,本文只写VPS使用教程,Windows下载教程可以查看Github地址或者作者博客

1、安装Node.js

#Ubuntu系统
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs

#Debian系统
curl -sL https://deb.nodesource.com/setup_10.x | bash -
apt-get install -y nodejs

#Centos系统
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
yum install nodejs -y

2、安装Pxder

#安装
npm i -g pxder
#卸载
npm uninstall -g pxder

3、登录P站

#登录P站,请输入账号和密码
pxder --login
#登出P站
pxder --logout

4、设置

#进入Pxder的设置界面
pxder --setting

#有五项设置,按下数字键选择一项进行设置,然后按照要求输入之后回车即可
[1] Download path       # 下载目录,必须设置
[2] Download thread     # 下载线程数
[3] Download timeout    # 下载超时时间
[4] Auto rename         # 自动重命名(文件夹)
[5] Proxy               # 使用代理,如果你是国外的服务器可以跳过

选项说明:

#下载目录
请注意相对路径与绝对路径的区别,不过不用担心,输入完路径后会显示绝对路径以方便你检查
目录无需手动建立,下载图片的时候会自动建立

#下载线程数
即同时下载的图片数,默认为5,最小为1,最大为10,因为其实不推荐使用过多的线程
下载图片时最左侧的一列实际上就是线程编号

#下载超时
如果这么多秒之后一张图还没被下载完则算作超时,超时后会自动重试,默认值为30
下载图片时如果线程编号是黄色底的就代表此次是重试

#自动重命名
开启了以后,例如这个画师原来叫abc,今天你再次去下载(更新)他的画作,但是他改名叫def了,那么程序会自动帮你重命名画师文件夹

#使用代理
支持使用HTTP或SOCKS
输入格式为<协议>://[用户名:密码@]<IP>:<端口>,例如:
http://127.0.0.1:1080
socks://abc:def@127.0.0.1:1080
如果什么也不输入就回车则关闭代理

Pxder的配置文件通常存放于npm安装路径/lib

运行机制

1、会将同一画师的作品下载在(UID)画师名格式的文件夹内,图片命名格式为(PID)作品名,并且,画师名会自动删除名字中@符号及以后的文字(因为这些基本上都是画师的摊位信息之类的与名字无关的信息)。
2、文件(夹)名均会过滤掉所有WindowsLinux中不能或不推荐做文件名的符号。
3、动图下下来会是所有帧的压缩包。
4、下载时会忽略掉已经下载的插画,但是如果你下载到一半退出,会在temp文件夹内残留未下载完整的坏图片,你可以自行删除,或者当你再次开始同一画师的下载时也会自动被删除。
5、下载超时或网络错误会自动重试。

使用方法

1、下载某画师的所有插画作品
使用-u--uid参数,后跟画师的UID,可单个可多个,如果多个则用英文半角逗号隔开。

pxder -u uid1,uid2,uid3,...
# 例如
pxder -u 5899479,724607,11597411

2、下载你关注的所有画师的所有插画作品
该操作同时也会更新已下载的关注画师的作品,并且效率远高于3,比较推荐使用。

#公开关注的画师
pxder -f
# or
pxder --follow

#私密关注的画师
pxder -F
# or
pxder --follow--private

3、更新已下载的画师的画作
会对下载目录中检测到的所有下载过的画师的插画进行增量更新下载,与2的区别是可以更新下载你使用1下载了的但是未关注的,但是效率远低于2

pxder -U
# or
pxder --update

4、下载你的收藏中的插画作品

#公开收藏,插画会被下载至[bookmark] Public文件夹中
pxder -b
# or
pxder --bookmark

#私密收藏,插画会被下载至[bookmark] Private文件夹中
pxder -B
# or
pxder --bookmark--private