为什么我imgur的图片加载不出来?
简单来说就是黑IP了,因为imgur在大陆是无法访问的,我们需要使用科学的方法来访问,这时候你节点的IP可能就在imgur的
黑名单
里面,导致没办法加载,具体表现为访问
i.imgur.com
(图片直链)返回
429
,访问
imgur.com
会返回
"data": {
"error": "Imgur is temporarily over capacity. Please try again later."
"success": false,
"status": 403
那怎么办呢?
其实最简单的方法就是
换一个节点
。
但是,我发现,换了一圈我现有的(包括self-hosted)都不能正常访问!!!
有网友说,
很多数据中心的IP进了imgur的黑名单
了,恰巧这时我也不想再找了,于是就想着自己折腾折腾,想一个方法。
很多网站在大陆访问比较慢,或者是被屏蔽了,这时候有一些人会做一些公益的镜像站,比如
Hugging Face
的镜像站
HF-Mirror
。
于是我就想,有没有一个imgur的镜像站呢?
答:没找到。
但是,有一些提供
图片镜像缓存服务
的网站,他们能够缓存图床的直链,并转发给用户。具体的可以参考
这篇
。
这里以
https://img.noobzone.ru/getimg.php?url=
为例,把要访问的imgur图片链接直接加在网址后面(作为参数传入)即可访问,且不需要科学的方法。
例如:
https://img.noobzone.ru/getimg.php?url=https://i.imgur.com/TbWS0cZ.png
我想到了
Header Editor (google.com)
,这个浏览器插件可以重定向所有满足某种条件的请求。
于是写一个正则匹配
i.imgur.com
为域名的URL,重定向至
https://img.noobzone.ru/getimg.php?url=
即可。
更新
:在热心网友的提醒下,发现该图片缓存网站似乎开启了防盗链,我们再创建一个规则,将请求头里面的
referer
去掉就可以正常获取图片了。
安装插件后,可以参考我写的填,或者直接从
https://gist.githubusercontent.com/shiquda/fde8daca5c45a829d063283ba41bcca4/raw/a7b80eeb251c5175b6e4e3d2fb6f497e9df7c0f9/header-editor-imgur-config
导入后开启规则应该就能生效了。
这里只支持在浏览器中访问,如果需要在其他软件中访问,可能需要一些其他分流软件,这里不再探讨。感兴趣的读者可以自行探索实现。