概述:使用postman抓取百度热搜,再将标题提取出来,每天早上9点通过钉钉群机器人定时发送到钉钉群里。
1. 抓取百度热搜的接口接口信息:
GET请求,URL:https://top.baidu.com/board?tab=realtime
2. 抓到请求后需要后处理,提取出标题并存放在变量里,所以这里要先创建postman的环境变量3. 接下来就是对GET请求获取到的数据进行处理,拿到标题(postman中使用的是js脚本)
// 通过分析发现,新闻标题所在行可以通过'"desc":"'这个字段提取出来一个列表
var data_list = responseBody.split("\"desc\":\"");
var news_list="";
var date = new Date();
var week = date .getDay(); // 查看当前是周几
var today = date .toLocaleDateString(); // 获取当前日期
news_list="各位领导早上好!今天是" + today + ";星期" + week + "\n机器人[新闻小助手]给各位领导播报今天的新闻。\n";
// 这里遍历一下第一步拿到的列表,再分割字符串获取到新闻标题
data_list.forEach((each,index)=>{
if(index>0){
var news_title = each.split("\",\"")[0];
if(news_title.length>3){
news_list = news_list + index +": "+news_title + "\n";
}
}
})
// 给变量赋值
pm.environment.set("news", news_list);
// 断言,返回码200即认为ok
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
// 输入在控制台,方便调试
console.log(news_list);
4. 执行完这一步以后,可以在控制台看到输出的新闻内容,也可以查看一下环境变量是否已经被赋值
5. 接下来给钉钉群新增一个自定义机器人 ,安全策略可以根据实际情况来(我这边使用的是关键字)
注意:第一种安全策略指的是你的请求体内包含这个关键字才会发送成功;第二个没用过,应该是请求体中需要多一个签名校验;第三种是指定ip段的请求才会被响应,具体可以查看钉钉机器人说明文档。
6. 添加一个POST接口,给钉钉群发送新闻接口信息:
POST请求,URL:将上一步机器人的webhook拷贝出来即可
body:{"msgtype": "text","text": {"content": "{{news}}" }}
这里的{{news}}就是从postman刚创建的变量,后处理这里可以加个200返回码判断是否成功响应
7. POST请求创建完成后可以尝试发送一下请求,看钉钉群中是否会收到消息 8. 将刚才两个接口保存在一个collections中,创建定时任务并保存 9. 可以在这里查看定时任务的执行情况欢迎分享,转载请注明来源:内存溢出
评论列表(0条)