1、引言
一个平台的数据统计规则不仅关乎公平性问题,而且还影响到用户的积极性,从而制约平台的发展,那么今天就以csdn为例,浅谈一下csdn博客文章阅读量统计的相关缺陷并给出相关的解决方案。
2、存在的问题
csdn博客文章阅读量统计方面的问题主要体现在来源于网页端匿名用户阅读量的统计,这里的阅读量居然很轻易地就被计算进入总阅读量中,实在是太危险了,而且在计算时,每访问一次就计算一次阅读量,如果被有心人利用,后果不堪设想。
举一个例子,如果我复制某一篇博客文章的链接,直接使用网络请求进行访问,在此过程中再使用多个分线程进行访问,那么阅读量很容易就会被刷上去,甚至我还可以加个随机数,实现随机延时访问,这样更难分辨。如此操作后,在进行榜单排名时就会受到影响,特别是在文章不错的情况下,相当于额外多了推荐的方式,无形中就影响了其它用户的利益。
除此之外就是文章支持嵌套于iframe标签中,这种情况下,如果某个用户在自己的个人网站的页面中加上一个iframe标签,并添加自己某篇文章的链接,那么用户每访问一次他的网页,相应的csdn文章阅读量就会增加一次,而且还是不同区域的不同ip进行访问,随机性更明显,根本无法识别,把使用ip代理的费用都省了。
3、解决方案
3.1、加上ip校验
这里是指没有ip记录的情况下,没有记录ip就要加上记录。
3.2、访问时长限制
这一点可以和b站学一下,加上一个访问时长限制,达到时长才计算阅读量,这样可以筛选出无效阅读。
3.3、禁用iframe标签访问
禁用iframe标签访问后就能避免利用私人网站刷阅读量的方式。
3.4、匿名访问单独记录
之所以让匿名访问单独记录是为了避免匿名用户访问影响主站用户访问的阅读量。
3.5、动态代码统计阅读量
不使用一访问就统计的方式,要让js代码执行后才统计,避免使用爬虫框架非正常访问。