Pixiv下载器

二月 03, 2026 / 阴暗的爬行 / 25阅读 / 2评论

本来是打算使用idm自带的站点抓取功能去抓取pixiv里面的图片,但是我感觉idm应该是老了,它已经跟不上时代了,尽管它带有填写用户名和密码的选项,但是它登陆不了。就算是你选择手动填写密码,它那自带的浏览器给你爆一堆的错误,然后你就只能看见空白一片,啥用没有。因此,萌生了自己调用pixiv的api来实现对指定的作品进行下载、显示特定标签下的所有作品,以及在不冲vip的情况下实现按照热度排序(还在实现中。。。。。。)

一、获取access_token和refresh_token

在获取这两个token之前,我们得先获取oauth2.0的code。首先准备PKCE参数,即code_challenge和code_verifier,然后使用GET方法,去请求https://app-api.pixiv.net/web/v1/login这个api,请求参数有

Key

Value (直接填入)

说明

code_challenge

(填入你计算出的值)

比如 w6uP8Tcg6K2QR905Rms8iXTlksL6OD1KkZh5gyhDnlM

code_challenge_method

S256

固定值

client

pixiv-android

伪装成安卓客户端

redirect_uri

https://app-api.pixiv.net/web/v1/users/auth/pixiv/callback

登录成功后的回调地址

你把这些请求参数给他们拼接成一个url,然后粘进浏览器里面,按F12打开开发者模式,选择“网络”,然后登录你的账号,你能看到一堆网络请求,然后找里面带有“code”字样的,后面跟着的一串字符串就是我们要的code。

有了这个code,接下来就可以去请求access_token和refresh_token了,使用POST方式请求https://oauth.secure.pixiv.net/auth/token这个api,然后配置body

Key (键)

Value (值)

说明

client_id

MOBrBDS8blbauoSck0ZfDbtuzpyT

固定值 (官方 App ID)

client_secret

lsACyCD94FhDUtGTXi3QzcFE2uU1hqtDaKeqrdwj

固定值 (官方密钥)

grant_type

authorization_code

固定值

code

xxxx....

填入你刚才抓到的那个 code

code_verifier

你的原始字符串

必须是你在生成 URL 前自己定义的那个原始随机字符串

redirect_uri

https://app-api.pixiv.net/web/v1/users/auth/pixiv/callback

固定值

include_policy

true

建议加上

正常情况下,你会得到一个json字符串,里面就写有你的access_token和refresh_token,access_token只有1个小时的有效期,但是refresh_token一般情况下是永久有效的,当access_token失效时,我们就要用refresh_token来刷新令牌。当你打算刷新令牌时,用POST方法请求https://oauth.secure.pixiv.net/auth/token这个api,配置body

Key (键)

Value (值)

说明

grant_type

refresh_token

填入保存的refresh_token

refresh_token

你的那个长串refresh_token

填入你上次拿到的那一串

client_id

MOBrBDS8blbauoSck0ZfDbtuzpyT

固定值(官方 App ID)

client_secret

lsACyCD94FhDUtGTXi3QzcFE2uU1hqtDaKeqrdwj

固定值(官方密钥)

二、根据作品ID下载特定作品

这回要用GET方式访问https://app-api.pixiv.net/v1/illust/detail这个api,请求参数是illust_id,填入作品的id,然后在Headers中配置User-Agent和Authorization,注意,Authorization是“Bearer ”后面跟着你的access_token。然后你就会得到一串json字符串,在meta_pages或meta_signle_page里面能找到图片的下载链接,然后就下载吧。

文章作者:阴暗的爬行

文章链接:https://blogs.crawlingcrab.cn/archives/pixivxia-zai-qi

版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0 许可协议,转载请注明出处!


评论