Pixiv图片代理自建
Pixiv的图片反代最近好像寄了,所以决定自己搭一个,记录一下。
使用 CloudFlare Workers 搭建
去Cloudflare创建一个Worker,然后将代码替换为如下:
export default {
async fetch(request) {
const url = new URL(request.url);
url.hostname = 'i.pximg.net';
const proxyRequest = new Request(url, request);
proxyRequest.headers.set('Referer', 'https://www.pixiv.net/');
return fetch(proxyRequest);
},
};
使用Vercel加速
在Github创建一个仓库,名称随意,在里面新建一个文件 vercel.json
,内容如下:
{
"version": 2,
"routes": [
{"src": "/(.*)","dest": "https://{DOMAIN}"}
]
}
记得将代码中的 {DOMAIN} 部分替换为你自己的域名或者默认域名
默认域名查看位置:打开你的 Worker 界面,转到 设置 – 触发器 – 路由
自定义域名在同页面的 自定义域 处添加。
随后打开 Vercel ,选择新建项目,再选择你刚刚创建的仓库,部署即可。
然后转至 Settings – Domains,添加你的自定义域名。然后你的Pixiv图片代理就搭建完成了。
这玩意有什么用
Pixiv 在大陆被墙,并且图片服务器域名 i.pximg.net 有盗链保护,只要 Referer 不是来自 Pixiv 的请求都会返回 403。
而我们可以通过自建图片反代来获取Pixiv的图片。
例如,这是一张 维尔汀 的 Pixiv 作品,Pixiv页面链接是 https://www.pixiv.net/artworks/115663906
图片链接是 https://i.pximg.net/img-master/img/2024/02/01/12/59/30/115663906_p0_master1200.jpg
(你们可以打开图片链接看看能否访问
搭建好图片反代后,链接可以写为这样以获取图片:
https://你的反代域名/img-master/img/2024/02/01/12/59/30/115663906_p0_master1200.jpg
例如我的就是
https://pximg.sakou.xyz/img-master/img/2024/02/01/12/59/30/115663906_p0_master1200.jpg
又比如,如果你正在使用 PixEz,那么你可以在 偏好设置 中将图片域名更换为你的
这样就能使图片正常加载了。
参考链接
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 QiuSYan's Blog!
评论
TwikooGiscus