打开博客园后台
然后按 F12
进入控制台,接下来输入下面的代码就好啦
/**
在最后一行修改博客地址用户名就好啦
*/
function countBlogReadings(CnblogsName){
console.log("正在统计 "+CnblogsName+" 的博客的总阅读量...");
//任务线程内部的全局变量数组,用于保存数据
var statisticsArray = [];
//发送ajax请求博客园
function getReadData(page){
//是否还要继续
var flag = false;
//使用XMLHttpRequest对象请求博客园
var xhr = new XMLHttpRequest();
xhr.open('GET', "https://www.cnblogs.com/"+CnblogsName+"/default.html?page=" + page, false);//同步
xhr.setRequestHeader("Content-Type", "text/html; charset=utf-8"); //设置响应格式
xhr.onreadystatechange = function() {
// readyState == 4说明请求已完成
if (xhr.readyState == 4 && xhr.status == 200 || xhr.status == 304) {
//使用正则处理HTML字符串,需要设置全局标识
//var myRe = /huanzi-qch(\s*)阅读(\s*)[(]+[1-9]\d+[)]/g;
var myRe = /阅读(\s*)[(]+[1-9]\d+[)]/g;
var resultArray = xhr.responseText.match(myRe);
//合并到全局变量数组中
statisticsArray = statisticsArray.concat(resultArray);
//判断这个即可:resultArray.length > 0 如果还有文章集合,则返回true
if(resultArray && resultArray.length > 0){
flag = true;
}
}
};
xhr.send();
return flag;
}
//循环调用getReadData,默认最大页数 100 (100页,每页10条记录,相对于1000篇博客,已经够多了吧?)
for(var i = 1;i < 100;i++){
//如果返回false则立即跳出循环
if(!getReadData(i)){ break;}
}
//处理全局数组
for(var i = 0;i < statisticsArray.length;i++){
if(statisticsArray[i]){
//只保留数字部分
statisticsArray[i] = statisticsArray[i].match(/[1-9]\d+/)[0];
}else{
statisticsArray.splice(i, 1);
}
}
//数组求和,需要返回主线程的最终值
var count = eval(statisticsArray.join("+"));
const currentDate = new Date();
const year = currentDate.getFullYear();
const month = (currentDate.getMonth() + 1).toString().padStart(2, '0');
const day = currentDate.getDate().toString().padStart(2, '0');
const hours = currentDate.getHours().toString().padStart(2, '0');
const minutes = currentDate.getMinutes().toString().padStart(2, '0');
const seconds = currentDate.getSeconds().toString().padStart(2, '0');
const formattedTime = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
console.log("统计结束");
console.log("截止:" + formattedTime + " 总阅读量为:"+count);
}
countBlogReadings('Varuxn');//这里这里,改成自己的用户名就好捏
没想到自己的博客阅读量已经到1.8w了(现在退役快三年了,以后有时间会更一下游记或者心得什么的,大概率是不会再有题解咯)
标签:const,查看,博客园,resultArray,statisticsArray,xhr,阅读,var,currentDate From: https://www.cnblogs.com/Varuxn/p/18503041