前言
博客园没有显示文章总字数,且我没有找到相关接口,所以就自己写了一个。
说起来其实有点麻瓜,因为我不会js,所以一开始是想用python写的,实现思路是在电脑上运行一个python脚本,定期爬本博客的所有文档,然后把统计结果push到gitee的仓库上,然后只要让页面访问那个仓库某个文件的内容就可以知道统计结果了。但是,这样有个问题:python需要长期挂在后台,这点是很麻烦的。
然后迫不得已,花了两天学了下js,写了一个js脚本来实现这个功能。脚本仓库:cnblogsWordCount,如果你觉得好用且恰好有gitee账号,不妨点个star或fork。
细看该脚本,你就会发现我用的是最蠢的方法:遍历博客下所有文章并统计字数。这是因为博客园的开放API里面并没有提供跨域资源共享(CORS)机制,由于同源策略,js无法从API中获取数据,所以就只能使用遍历了。
由于该脚本只是简单地将content.length作为文章字数,统计结果可能会有偏差,特别是当你的文章内含大量代码的时候。
使用
使用之前你的博客园需要拥有js权限。
打开博客园后台管理->设置
将下列代码粘贴到博客侧边栏公告(支持HTML代码) (支持 JS 代码)
末尾
<script src="https://files.cnblogs.com/files/focksor/axios.min.js"></script>
<script src="https://files.cnblogs.com/files/focksor/wordCount.js"></script>
我的博客园主题是Silence v2.0.2,未对其它主题兼容性进行测试,由于某些主题有可能对DOM进行修改,你可能需要适当修改该脚本。
你也可以将脚本上传到你的博客园文件中以使用。
效果
统计中:
统计完成:
阅读时间预计: