自动采集网站内容(海洋cms怎么设置宝塔自动采集:获取脚本代码。)
优采云 发布时间: 2021-09-01 07:23自动采集网站内容(海洋cms怎么设置宝塔自动采集:获取脚本代码。)
Oceancms如何设置宝塔自动采集,因为很多人都在问这个问题,所以有这个教程。虽然oceancms给出了脚本代码,但是对于刚接触oceancms的用户来说,理解并不是那么容易。今天就详细介绍一下使用海洋cms自动采集的具体步骤。
Oceancms如何设置宝塔自动采集第一步:获取脚本代码。
[1] 以下是Oceancms官网提供的自动采集脚本代码。我们需要修改代码中的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]秒"
Oceancms如何设置宝塔自动采集 第二步:修改脚本
[2] 脚本中的哪3项需要特别修改?让我为你一一讲述。 (根据上面提供的代码内容,复制到记事本或者其他html编辑器进行相应修改)
#①请修改下面的网站域名及管理目录
web_site="http://网站域名/管理目录/admin_reslib2.php"
这里要修改为你的“网站域名”和“seacmsbackground 管理目录”。每个人都可以理解域名。后端管理目录需要新手多说几句。首先,您必须能够登录到您的后端以了解您的后端目录。比如:如果我的后台登录地址是,那么这里的文章就是后台管理目录,拿到管理目录的时候直接填写代码即可。
#②请修改下面项内容为"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'
)
这是代码中需要修改的最后一项。里面是代码中默认提供的两个采集链接地址。我们需要获取我们的采集 链接地址并将其添加到其中。关于获取链接地址的详细信息,请参见下面的屏幕截图。步操作。如果你还没有添加或者不知道如何添加采集,可以参考帮助文档-oceancms如何添加资源库采集interface
选择“后台-采集-资源库列表”,复制资源站右侧“采集今日”、“采集今日”、“采集全”的链接地址根据您的选择,并删除 ?之前的内容。 (当天或本周将鼠标移至采集,鼠标右击复制链接即可获得采集链接)
例如,这里是:
1
:///inc/ldg_seackm3u8s.php
第 2 步:删除“?”之前的内容复制上一步,结果如下:
2
?ac=day&rid=1&url=
这样就得到了最终的采集 URL
Oceancms如何设置宝塔自动采集 第三步:设置宝塔定时任务。
【3】直接将代码复制到宝塔计划任务的shell脚本中,并在内容中添加小时任务。具体步骤如下截图。步骤⑤是将我们修改后的脚本复制粘贴到脚本内容框中。
4] 总结
一般来说,在脚本中修改几个需要修改的项目后,将修改后的脚本复制到宝塔的定时任务设置中。安排采集task 就足够了。不要选择错误的任务类型。如果您对本教程不了解或有任何疑问,可以加入社区进行讨论和查询。