一、1. 创建云函数
1. 登录 Serverless 控制台,单击左侧导航栏的函数服务。
2. 在函数服务页面上方选择北京地域,单击新建。
3. 进入新建函数页面,根据页面相关信息提示进行配置。如下:
·创建方式:选择模板创建。
·模糊搜索:输入“定时任务示例函数”,并进行搜索。单击模板中的查看详情,即可在弹窗中查看相关信息,支持下载操作。
4. 单击下一步,进入函数配置页。
二、2. 查看模板
在函数配置页中,单击展开函数代码卡片查看核心代码。这是一个完整可运行的示例,实现了引用 puppeteer 实现对网页内容截屏,并转换为 base64 打印到函数日志的功能:
如需对函数代码进行修改,请参见下文中修改函数模板。
三、修改函数模板
你可以根据自己的定时任务需求对相关模板进行修改。
例如执行以下命令,获取页面 title:
// 获取页面title可供参考const title = await page.title();console.log(title);
增加以下代码,设置点击页面属性。
// 点击页面属性可供参考await page.click('a');
更多 puppeteer 使用指引可参见 puppeteer 文档。配合该工具可以定时访问页面内容,并对页面进行任务操作,例如数据爬取、签到等。
四、3. 配置定时器
在触发器配置中,选择自动创建,则默认创建一个每1小时0分执行一次的定时触发器。如下:
五、4. 测试云函数
1. 单击完成,函数将自动部署。
2. 在函数管理 > 函数代码页面,单击代码编辑器下方的测试,查看函数的执行日志。
3. 测试成功后,可以根据实际情况,在触发管理页签中配置定时触发器,并验收相关 Base64。
六、排障与优化
·函数执行超时:Puppeteer 操作较慢,请在函数配置中将执行超时时间调整为30秒或更长。
·内存不足:浏览器占用内存大,建议内存配置选择256MB或更高。
·如何本地调试:可先在本地 Node.js 环境中运行调试代码,确认 Puppeteer 脚本无误后,再部署到云函数。