Butterfly主题友情链接可用性检测
Heo 的方案
发送 HEAD 请求来检查链接是否可访问 (使用 GitHub Action + Vercel)
Python 方案遇到的麻烦
Heo 哥的方案是使用 Python 脚本运行的,奈何我的老 Windows 7 安装 Python 总是那么困难。
Python 3.4 版本完美安装了pyyaml
,结果运行时告诉我 Python 版本太低无法解析某些字符。
好吧,于是我升级到 Python 3.8.6,这是 Windows 7 的极限,但不自带pip
(离谱,明明说好的 Python 3.4 以上版本自带pip
)。
Python 方案就此结束了——这些问题实在是让我一辈子都没遇到过。PowerShell 方案遇到的麻烦
换了一种方案,使用 Windows 7 自带的 PowerShell,结果版本太低不行。
升级 PowerShell 到 5.1 后可以了,但安装pyyaml
失败了,网络错误,代理也走了(没道理)。
PowerShell 方案也就结束了。GitHub Action 方案
难道就这样结束了吗?突然想到了 GitHub Action,直接开始搞,结果成功运行并生成了无法访问的.txt
文件(产物)。
但必须下载并解压才能查看——这实在是太麻烦了。
然后灵光一闪,决定将输出结果改为 HTML 格式,这样就可以以网页形式展示了。
然后经历了一些问题,但经过我一个多小时的思考和调试,最终完美运行。
后期就可以通过 Cloudflare、GitHub Pages 或 Vercel 来部署了。效果图
至于轻笑大佬的链接为何出现在这里,是因为 GitHub Action 本来就是国外的服务,轻笑大佬的域名屏蔽了国外服务,所以就出现了无法访问的结果。
后续仍然需要手动去检查。项目地址
GitHub 项目地址
使用方法
Fork 项目
首先 fork 该项目并创建一个不过期的 Token。
Token 必须包含repo
的所有选项,并且具备workflow
、write:packages
、delete:packages
和project
权限。
保存 Token 后,回到仓库的Settings
中的Secrets and variables
,添加变量PAT_TOKEN
并填写 Token。设置 GitHub Actions
打开仓库的Settings
->Actions
页面,勾选:Allow all actions and reusable workflows
Read and write permissions
Allow GitHub Actions to create and approve pull requests
然后保存。
修改配置文件
在 fork 后的项目中,可以删除index.html
(后期会自动生成)。
修改link.yml
文件,将其中的内容替换为你的博客友链 YAML 配置即可。运行 GitHub Actions
打开 Action,运行工程流文件即可。如果出现问题,可以回到仓库的任何一个文件夹,随便修改一个文本文件,保存后重新运行。
部署
剩下的部分就是部署了,我使用的是 Vercel。
如果遇到任何问题,欢迎在 GitHub Issues 提交反馈。