感觉大家对这个话题比较感兴趣,那就深挖一下,做一个完整的产品出来。
假设你是字节跳动的员工,需要实时关注小红书上提到你们公司的图文,最常见的做法就是不时登录app或者打开电脑浏览器,输入搜索关键词,大致瞄一眼,看看有没有新的文章,就这样,一人,一天,就过去了。
既然你是字节的员工,那么肯定知道Coze(扣子)了,不妨试试里面的自动工作流?
之前就写过一篇类似的文章,不过那不是用来做实时舆情监测的,而是用来做一次性的数据抓取然后用来分析的。
这次用到的插件也是类似,但是工作流设计有点不一样。大概长这样。
触发器长开始插件里配置,使用Cron表达式,设置为每小时
在小红书的xhs_search_notes插件里配置好cookie和关键词,然后配置选择器
这一步也可以不用,主要是用来判断你输入的小红书cookie是不是过期了,如果没有,工作流就正常运行,如果过期了,那么发送一条微信消息提醒一下。
这里就略过微信机器人插件的介绍了,插件详情页有介绍,目前是免费的。
继续,对搜索到的小红书结果进行一个批处理操作,默认返回20条结果,下面就是逻辑关键点了。
每一条小红书图文都有自己独一无二的id,我们就可以利用这点建立一个数据库,里面放俩字段,一个是小红书文章链接,另一个就是id。对搜索到的新的小红书文章,我们先获取id,然后在数据库里查询看看是不是已经抓过了,如果抓过,就跳过,如果没有,那就新增一条数据插入数据库,同时把链接通过微信扣子机器人发送信息提醒自己。
async function main({ params }: Args): Promise<Output> { const ret = { "key0": params.input, "key1": params.input.split('/')[4].split('?')[0], }; return ret;}
如果有了,就继续下一条,直到结束。如果没有,就新增数据。
后续可以优化的地方是能不能也利用自动工作流更新小红书cookie,以及微信提醒直接发送带图文的小红书详情。