普陀 发表于 2024-10-6 14:37:09

海洋CMS宝塔面板定时任务脚本


下面是自动采集脚本代码

#!/bin/bash
########################################################
# 程序名称: 海洋CMS自动采集脚本
# 版本信息:seacmsbot/ v2.0
# 发布链接: https://www.seacms.net/
# 使用方法:直接复制代码到宝塔计划任务shell脚本内容里添加每小时任务使用
# 更新时间:2019.9.26
##########################################################
#①请修改下面的网站域名及管理目录
web_site="http://网站域名/管理目录/admin_reslib2.php"
   
#②请修改下面项内容为"admin_reslib2.php"里设置的访问密码(默认为系统设置的cookie密码)
web_pwd="8888e82e85bd4540f0defa3fb7a8e888"
   
#③下面项内容为资源站每日采集链接地址列表,请自行修改,每行一条,可添加多个,前后需添加引号。
#每日采集链接获取方法:选择"后台-采集-资源库列表",复制资源站右边的"采集每天"的链接地址,去掉?前面的内容。
web_api=(   
      '?ac=day&rid=1&url=https://api.iokzy.com/inc/ldg_seackm3u8s.php'
   '?ac=day&rid=2&url=http://www.zdziyuan.com/inc/s_ldgm3u8_sea.php'
)
#模拟用户浏览器ua,请勿随意修改,以免被目标防火墙拦截!
web_ua="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/76.0.3809.100 Safari/537.36 seacmsbot/1.2;"
   
#采集单页
function get_content() {
echo"正在采集第$page页..."
#echo" get_content: --->url:--->$1"
cResult=$(curl--connect-timeout 10 -m 20-k -s   -L -A "$web_ua""$1" )
echo $cResult | grep -q "采集"
#echo-e"$1n$cResult"
if [ "$?" = "0" ]; then
   next_content "$cResult"
else
    echo-e "采集失败,请检查设置!n失败链接-->$1n返回信息-->$cResultn采集结束,共0页"
fi
}
#采集下页
function next_content() {
    #统计数据
   Result=$(echo "$1" | tr "
" "n")
   a=$(echo "$Result" | grep -c"采集成功")
   b=$(echo "$Result" | grep -c"更新数据")
   c=$(echo "$Result" | grep -c"无需更新")
   d=$(echo "$Result" | grep -c"跳过")
   echo "采集成功-->已更$c部,新增$a部,更新$b部,跳过$d部"
   let add+=$a
   let update+=$b
   let none+=$c
   let jmp+=$d
    #检测并采集下页
   next_url=${1##*location.href='}
   next_url=${next_url%%'*}
      #echo $next_url
      if [ "${next_url:0:1}" = "?" ]
          then
          let page++
          get_content "$web_site$next_url"
    else
         echo "采集结束,共$page页"
       fi
}
#脚本入口
echo "海洋CMS自动采集脚本开始执行 版本:v1.2"
starttime=$(date +%s)
update=0#更新
add=0   #新增
none=0#无变化
jmp=0# 跳过
for url in ${web_api[@]};
do
if [[ ! -z $url ]]
   then
         web_param="$web_site$url&password=$web_pwd"
         page=1
         echo "开始采集:$url"
         get_content $web_param
fi
done
endtime=$(date +%s)
echo "============================"
echo "入库-->$add部"
echo "更新-->$update部"
echo "跳过-->$jmp部(未绑定分类或链接错误)"
echo "今日-->$部"
echo "============================"
echo"全部采集结束,耗时$秒"
第二步:修改脚本

需要修改脚本里面的3项内容:

#①请修改下面的网站域名及管理目录

web_site="http://网站域名/管理目录/admin_reslib2.php"

这个是需要修改成你的“网站域名”和“海洋cms后台的管理目录”。域名大家都能理解,后台的管理目录这个对于新手来说需要多讲两句,首先你要能登录你的后台才可以知道你的后台目录。举例说明:假如我的后台登录地址是 yszzq.com/xxxx/那么这里的“xxxx”就是后台的管理目录,得到了管理目录我们直接填写到代码里即可。

#②请修改下面项内容为"admin_reslib2.php"里设置的访问密码(默认为系统设置的cookie密码)

web_pwd="8888e82e85bd4540f0defa3fb7a8e888"

这个修改需要到海洋cms系统后台得到我们的cookie密码进行替换才可以,具体步骤:系统-网站设置-cookie密码。得到自己网站的cookie密码后替换即可。

#③下面项内容为资源站每日采集链接地址列表,请自行修改,每行一条,可添加多个,前后需添加引号。

#每日采集链接获取方法:选择"后台-采集-资源库列表",复制资源站右边的"采集每天"的链接地址,去掉?前面的内容。

web_api=(   
      '?ac=day&rid=1&url=https://api.iokzy.com/inc/ldg_seackm3u8s.php'
   '?ac=day&rid=2&url=http://www.zdziyuan.com/inc/s_ldgm3u8_sea.php'
)
这个是代码里需要修改的最后一项,里面是代码里默认提供的2个采集链接地址,我们需要获取自己的采集链接API地址添加到里面。

第三步:宝塔定时任务设置

直接复制修改好的代码到宝塔计划任务shell脚本,然后根据需要在宝塔面板里设置执行时间。
页: [1]
查看完整版本: 海洋CMS宝塔面板定时任务脚本