自动刷新博客访问量

版权声明:转载请注明出处! https://blog.csdn.net/zongf0504/article/details/86633401

在自媒体时代, 为了增加自己博客的访问量, 写了一个自动化访问博客的脚本. csdn 做了限制, 一分钟之内的重复访问不记录次数, 所以笔者设置了访问时间间隔为60秒, 即60秒访问一次.

1. 访问博客脚本

#!/bin/bash
#Desc 刷新博客访问量, 接收多个参数:博客id
#Auth zongf
#Date 2019-01-24

# 校验参数
if [ $# -lt 1 ]; then
   echo "[error] 命令需提供博客id"
   exit 1
fi

# csdn博客文章id, 访问地址
url="https://blog.csdn.net/zongf0504/article/details"
userAgent="Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0"
refer="https://www.baidu.com"

# 刷新间隔
interval=60

#访问
access_blog(){

  local blog_id=$1
  local blog_url=$url/$blog_id  

  # 清空文件
  local blog_file="csdn.$blog_id"
  rm -f $blog_file

  # 访问网址
  curl -A "$userAgent" -o $blog_file -O $blog_url &>/dev/null -e $refer
  
  # 提取包含阅读数的行
  line=`cat $blog_file | grep "阅读数:" `
  # 提取阅读数关键信息
  views=`expr "\'$line\'" : '.*\(阅读数.*\)<.*'`

  echo "    网址:$blog_url, $views"

}

# 记录执行次数
num=0

while [ 1 > 0 ];
do
  # 访问次数自增1
  let num=$num+1

  # 访问所有文章
  echo "[`date +'%Y-%m-%d %H:%M:%S'`]-第$num次访问:"
  for id in "$@"
  do
     access_blog $id
  done

  # 休眠
  sleep $interval
done

2. 调用示例

 $ ./refresh-csdn-blog.sh 86629034 86419497
[2019-01-24 21:14:28]-第1次访问:
    网址:https://blog.csdn.net/zongf0504/article/details/86629034, 阅读数:125
    网址:https://blog.csdn.net/zongf0504/article/details/86419497, 阅读数:43
[2019-01-24 21:15:31]-第2次访问:
    网址:https://blog.csdn.net/zongf0504/article/details/86629034, 阅读数:126
    网址:https://blog.csdn.net/zongf0504/article/details/86419497, 阅读数:44

猜你喜欢

转载自blog.csdn.net/zongf0504/article/details/86633401