百度收录情况查询小应用的实践

之前的文章里都有提到我最近弄了些站群,用意是想给主站做大量的反向链接。《KOA启动多个模版二级域名网站的实践》

站群建好自然就是提交百度收录。然后每天都要花一定的时间检查百度的收录情况。

百度的收录平时都是在爱站或者站长工具里查看。

图片

其实它们也是后台请求百度的接口,得出的信息。

百度搜索输入框里同样可以通过输入site:xxx.xxx.xxx(域名),譬如site:tennis.kuashou.com 看到域名收录的数量。

图片

因为毕竟我的是站群(目前大概10多个),每天如果要通过工具或者直接百度搜,都其实是件挺费时间的事,索性就自己做个一次快捷查询完的小应用出来,方便自己查看。

服务端

其实核心代码很简单,服务端总共做两件事

const axios = require('axios')
const preUrl = 'http://www.baidu.com/s?wd=site:' // 百度搜索接口
let data = await axios.get(`${preUrl}${ctx.params.host}`).then(res => res.data)
let reg = /(.*)百度为您找到相关结果约(.*)个(.*)/ //正则匹配返回的html中的搜索结果
let num = data.match(reg)
if(num==null) return ctx.body = 0 //如果匹配不上,说明收录数量为0
ctx.body = num[2]

其实类似于一个简易爬虫的接口处理。我用正则匹来获取我想要的一个值的技巧get到了吗?很有用。

客户端

客户端更简单,遍历每个域名作为参数请求刚做好的服务端,获取数据展示出来就好,这里就不表了。

我用网页承载这个简单的应用,是考虑到兼容性平时也可以用手机上查看。

具体搭建是用Taro框架(有空我会写推荐这个框架的文章)生成H5发布到服务器。然后手机safari浏览器打开,再添加到屏幕像一个App,这样随时打开手机就可以看到收录情况了。

图片

至此,一个为方便自己做的微型应用做好了。(没做界面很丑,反正是自己用)

图片

后话:很多朋友问我怎么有那么多代码要写,其实从这个例子也可以看出来,我业余很喜欢把平时工作生活中很耗时间的一些操作或者繁琐的事情做成工具,用碎片化的时间去写出来,这样才可以腾出更多的时间做更多的事。

如果你有生活或工作中隐约感觉能用代码解决的,欢迎留言或私我,好玩有用的话我很愿意帮忙。