自动化 2026-06-05 · 6分钟

如何设置定时自动采集?crontab教程


如何设置定时自动采集?



手动采集效率低下,本文教你使用Linux crontab设置定时任务,实现每天自动采集更新。

什么是crontab?



crontab是Linux系统的定时任务工具,可以按照设定的时间自动执行命令。

苹果CMS V10定时采集



1. 获取采集URL



在苹果CMS后台,进入采集 → 自定义资源库,点击"采集当天",复制浏览器地址栏的URL。

示例:
```
https://yourdomain.com/admin/collect/api.html?ac=cj&rid=1&hour=24
```

2. 设置crontab



```
# 编辑crontab
crontab -e

# 每天凌晨2点执行采集
0 2 * * * curl -s "https://yourdomain.com/admin/collect/api.html?ac=cj&rid=1&hour=24" > /dev/null 2>&1

# 每天中午12点执行采集
0 12 * * * curl -s "https://yourdomain.com/admin/collect/api.html?ac=cj&rid=1&hour=24" > /dev/null 2>&1
```

3. 常用crontab时间设置



| 时间 | crontab表达式 |
|------|--------------|
| 每小时 | 0 * * * * |
| 每天凌晨2点 | 0 2 * * * |
| 每6小时 | 0 */6 * * * |
| 每周一凌晨 | 0 2 * * 1 |

海洋CMS定时采集



海洋CMS支持内置定时任务,在后台设置即可:

  • 进入后台 → 采集管理 → 定时任务

  • 选择要采集的节点

  • 设置执行时间

  • 保存即可


  • 注意事项



  • 采集频率:不要过于频繁,建议每天2-4次

  • 服务器负载:大量采集会占用服务器资源,注意监控

  • 采集时间:建议在用户访问低峰期执行(凌晨)

  • 日志记录:建议记录采集日志,方便排查问题


  • 高级:使用脚本采集



    可以编写shell脚本,实现更复杂的采集逻辑:

    ```
    #!/bin/bash
    # collect.sh

    LOG_FILE="/var/log/collection.log"
    DATE=$(date +"%Y-%m-%d %H:%M:%S")

    echo "[$DATE] 开始采集..." >> $LOG_FILE

    # 采集资源站1
    curl -s "https://yourdomain.com/admin/collect/api.html?ac=cj&rid=1" >> $LOG_FILE 2>&1

    # 采集资源站2
    curl -s "https://yourdomain.com/admin/collect/api.html?ac=cj&rid=2" >> $LOG_FILE 2>&1

    echo "[$DATE] 采集完成" >> $LOG_FILE
    ```

    设置crontab:
    ```
    0 2,14 * * * /bin/bash /path/to/collect.sh
    ```
    ← 返回知识库