tencent cloud

文档反馈

SCF+定时任务实现页面内容定时采集

最后更新时间:2021-12-06 14:52:37

    操作场景

    本文使用了云函数 SCF,并在函数中通过 puppeteer 实现定时对页面内容进行采集、数据存储等任务。用户还可以通过函数执行数据爬取、定时签到、网页巡检等复杂的 Web 定时任务。

    操作步骤

    创建云函数

    1. 登录云函数控制台,选择左侧导航栏中的 函数服务
    2. 在“函数服务”页面上方选择北京地域,并单击新建进入新建函数页面,根据页面相关信息提示进行配置。如下图所示:
      • 创建方式:选择模板创建
      • 模糊搜索:输入“定时任务示例函数”,并进行搜索。
        单击模板中的查看详情,即可在弹出的“模板详情”窗口中查看相关信息,支持下载操作。
    3. 单击下一步,函数名称默认填充,如需对函数代码进行修改,单击展开函数代码卡片并可参见 修改函数模板 进行修改。
    4. 触发器配置中,选择自动创建,则默认创建一个每1小时0分执行一次的定时触发器。如下图所示:
      说明:

      • 如需根据需求自行调整触发器配置,请选择自定义创建
      • 如需在测试成功后再创建定时触发器,请选择暂不创建
    5. 单击完成,完成函数的创建。

    测试云函数

    1. 在函数代码界面的下方,单击测试,查看函数的执行日志。
    2. 测试成功后,可以根据实际情况,在触发方式页签中配置定时触发器,并验收相关 Base64。

    相关操作

    修改函数模板

    当前模板函数引用 puppeteer 实现对网页内容截屏,并转换为 base64 打印到函数日志。您可以根据自己的定时任务需求对相关模板进行修改。
    例如执行以下命令,获取页面 title:

    // 获取页面title可供参考
    const title = await page.title();
    console.log(title);
    

    增加以下代码,设置点击页面属性。

    // 点击页面属性可供参考
    await page.click('a');
    

    更多 puppeteer 使用指引可参见 puppeteer 文档。配合该工具可以定时访问页面内容,并对页面进行任务操作,例如数据爬取、签到等。

    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持