如何在海洋cms中设置自动采集宝塔
优采云 发布时间: 2020-08-09 06:26如何在海洋cms中设置自动采集宝塔,因为许多人都在问这个问题,所以这里有本教程. 尽管ocean cms提供了脚本代码,但是对于不熟悉ocean cms的用户来说,理解起来并不容易. 今天深入探讨了使用宝塔现实自动采集海洋cms的具体步骤.
如何在海洋cms中设置自动采集宝塔. 第一步: 获取脚本代码.
【1】以下是Ocean cms官方网站提供的自动采集脚本代码,使用前需要修改代码中的3个项目.
#!/bin/bash
########################################################
# 程序名称: 海洋CMS自动采集脚本
# 版本信息:seacmsbot/ v2.0
# 发布链接: https://www.seacms.net/post-update-92579.htm
# 使用方法:直接复制代码到宝塔计划任务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 "$1\n$cResult"
if [ "$?" = "0" ]; then
next_content "$cResult"
else
echo -e "采集失败,请检查设置!\n失败链接-->$1\n返回信息-->$cResult\n采集结束,共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 "今日-->$[none+add+update]部"
echo "============================"
echo "全部采集结束,耗时$[endtime - starttime]秒"
如何在海洋cms中设置自动采集宝塔. 第二步: 修改脚本
[2]脚本中的哪3个项目应特别修改?让我为您一个一个地谈论它们. (根据上面提供的代码内容,将其复制到记事本或其他html编辑器中进行相应的修改)
#①请修改下面的网站域名及管理目录
web_site="http://网站域名/管理目录/admin_reslib2.php"
这将被修改为您的“网站域名”和“ ocean cms后端管理目录”. 每个人都可以理解域名,对于新手来说,后端管理目录需要多说几句话. 首先,您需要登录到后端以了解您的后端目录. 例如: 如果我的后端登录地址是,那么这里的“文章”就是后端管理目录,我们可以在获得管理目录后直接填写代码.
#②请修改下面项内容为"admin_reslib2.php"里设置的访问密码(默认为系统设置的cookie密码)
web_pwd="8888e82e85bd4540f0defa3fb7a8e888"
此修改需要在ocean cms系统的后台用我们的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'
)
这是代码中需要修改的最后一项. 里面是代码中默认提供的两个集合链接地址. 我们需要获取自己的采集链接地址并将其添加到其中. 有关获取链接地址的详细信息,请参见下面的屏幕快照中的步骤. 如果尚未添加或不知道如何添加集合,则可以参考帮助文档-如何向Ocean cms添加资源库集合界面
选择“背景-采集-资源库列表”,根据您的选择复制资源站右侧的“采集日”,“本周采集”和“全部采集”的链接地址,并删除在它前面的内容. (在采集日期或本周移动鼠标,右键单击所有鼠标以复制链接以获取采集链接)
例如,这里是:
1
http://127.0.0.1/admin/admin_reslib.php?ac=day&rid=1&url=https://api.iokzy.com/inc/ldg_seackm3u8s.php
第2步: 删除“?”之前的内容复制到上一步,结果如下:
2
?ac=day&rid=1&url=https://api.iokzy.com/inc/ldg_seackm3u8s.php
这将获得最终的采集URL
如何设置海洋cms宝塔的自动采集. 第三步: 宝塔计时任务设置.
[3]直接将代码复制到“塔计划任务”的Shell脚本中,然后将每小时的任务添加到内容中. 具体步骤如下. 步骤⑤是将修改后的脚本复制并粘贴到脚本内容框中.
[4]摘要
通常来说,在修改了脚本中需要修改的几个项目之后,将修改后的脚本复制到宝塔的预定任务设置中. 不要选择错误的任务类型. 如果您对本教程不了解或有任何疑问,可以加入社区进行讨论和查询. 加入社区
作者: 我想举报匿名