作为一个野路子程序员,看大牛的博客是学习,进步的很重要的一个信息来源。 作为一个信息的汇聚点,博客中总会引用些其他的经典文章,或是某开源项官方文档中的重要部分。 然而由于更新博客是很低频率的事件,所以随着时间推移,很可能发生的情况是:大牛引用的另一篇文章 已经被删除,或者干脆域名到期,引用的博客关门大吉;由于开源项版本升级,原先的文档已经不适用因而 官方删除了。 So, 404...
##现状
尝试测试了 阮一峰( http://www.ruanyifeng.com/blog/), 王垠( http://www.yinwang.org/) 等知名博主的博客,发现几乎都有链接失效的问题。 可见此问题很常见。
##博主
大多数的博主并不是通过写博客盈利赚钱,所以不可能定期去检查以前博文中的链接是否有效。 话说回来,即便真的是通过写博客盈利赚钱,那么多的博文,也不太可能定期去检查以前博文中的链接是否有效吧。。
##读者
虽然对我很不友好,破坏了上下文和文章的完整性,但是 习惯了。。认了吧。。。凑合看吧。。
##中国特色
由于众所周知的原因,中国读者遇到引用链接不可访问的情况更多,并且不可访问的链接越来越多。
作为一个独立开发者,用了若干个第三方服务,CDN 等。天有不测风云风云,保不齐哪天哪个服务商就黄了,或者哪个 CDN 又被墙了。。。
##尝试解决
一个可能的解决方法 link doctor
https://doctor.dry.ninja/
博主(站长)在网站注册后,系统尝试定期(每 6 小时 1 次,可设定)对网站进行一次分析,找出失效的引用的链接,或是失效的引用的资源(js, css), 并将分析结果发送给博主(站长)。
目前刚刚有想法做这个东西,并做了个简单的 Demo。 在检测的全面性和精准度方面还不做保证。如果真的有博主有这个需求,请收藏、标星。如果没有人有需求的话,就弃坑了。。 或者有什么好的建议的话,欢迎提个 issue。
github 地址在此: https://github.com/FingerLiu/link-guard
##技术栈
flask, mysql, redis, gunicorn, scrapy
待解决问题
爬虫被 ban 由于国内和国内网络环境不同,分别部署不同的服务器 什么需要检测什么不需要 对引用的链接进行备份(snapshot)。
https://doctor.dry.ninja/