ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

影刀RPA完全指南:舆情监控系统——关键词全网巡检与告警

影刀RPA完全指南:舆情监控系统——关键词全网巡检与告警 影刀RPA完全指南舆情监控系统——关键词全网巡检与告警品牌被人在网上说了坏话等老板拿着截图来找你事情已经发酵半天了。人工盯微博、盯新闻站、盯贴吧三个人轮班都盯不过来这是我带过的一个运营团队最真实的痛点。后来我用影刀RPA搭了一套关键词舆情巡检系统每30分钟自动扫一遍全网关键词发现新内容直接推飞书群告警全程没人值守。这篇是影刀RPA完全指南风格的一篇我把舆情监控这个案例从头到尾拆给你看关键词怎么配置、搜索结果怎么翻页采集、怎么判断这条是新出现的、告警怎么发到群里。跟着做完你能得到一个每天早上自动汇报、全天定时巡检的可用系统。我也是非技术出身做这件事之前连XPath是什么都不知道实操两年下来这类流程的关键难点其实就三个定位、去重、通知。下面按顺序讲。认识影刀RPA与安装准备十分钟搭好巡检环境去影刀官网下载客户端双击安装包一路下一步装完后用手机号注册登录。社区版免费每天可运行30分钟跑这种定时巡检任务基本够用如果你要全天高频巡检创业版没有时长限制按需升级。装完第一件事是装浏览器插件。点客户端右上角的设置进入浏览器插件把Chrome或Edge插件装上并启用网页自动化全靠它。装完在浏览器右上角能看到影刀的图标就算成功。元素定位四合一搜索结果列表怎么抓得又准又稳舆情巡检的核心动作是在搜索页把每条结果的标题、链接、发布时间抓下来。这里必须讲清楚元素定位的四种手段因为不同网站结构不一样你得会换工具。元素捕获是最基础的点击影刀顶部工具栏的捕获元素按钮浏览器里鼠标移过去出现橙色边框点一下确认。但搜索结果列表里的条目长得一模一样单点捕获只能抓到第一条这时候要用相似元素的思路。XPath是最常用的定位语言下面是舆情场景里最实用的几种写法# 捕获元素搜索结果列表里每一条结果的标题取所有不是第一条 //div[classresult-list]//a # 模糊匹配标题里包含涨价这个关键词的条目 //*[contains(text(),涨价)] # 参照物定位通过发布时间文本定位它的父级容器再找里面的链接 //*[contains(text(),发布于)]/ancestor::div[1]//a # 属性部分匹配class是动态的只匹配前缀稳定的部分 //div[starts-with(class,card_)]//h3CSS选择器和XPath是并列关系不是谁取代谁。简单场景CSS更短比如div.result-list a等价于上面第一行但要往上找父级、按文本匹配CSS做不到只能XPath。我的选型经验固定结构用CSS带文本判断或层级跳转用XPath。第三种是正则表达式用在从杂乱文本里抠内容比如从3小时前发布于北京里提取3小时前。第四种是图像定位舆情场景里偶尔处理验证码弹窗才用得上后面讲。变量与数据类型去重的关键在字典巡检系统最容易翻车的地方是同一条舆情反复告警。解决办法是用一个字典变量记录已经见过的链接。影刀里常用四种数据数字、字符串、列表、字典。关键词清单用列表存链接 → 首次发现时间这种对应关系用字典存新增行记录前先判断字典里有没有这个键键不存在时影刀不会报错返回空值你拿这个特性判断即可。网页接口返回的JSON数据用将JSON字符串转换为Python对象这类指令转成对象再操作。我第一次做的时候用列表存链接去重跑了一晚上列表越攒越长每次判断都要从头比一遍越跑越慢。换成字典之后判断是否存在是常数时间这个坑记住。流程控制三层循环骨架与Try-Catch保命舆情巡检的流程骨架是三层外层ForEach列表循环遍历关键词中层循环相似元素(web)遍历搜索结果内层IF条件判断这条是不是新的。具体做法用打开网页指令打开搜索页URL参数直接拼关键词用循环相似元素(web)指令圈住结果列表循环体里用提取文本指令拿标题和时间用IF条件判断IF 网页包含某些负面词命中才进入告警分支。所有网络操作都要包进Try-Catch。把可能出错的指令拖进Try块Catch块里放输出日志记录报错信息和当前关键词Finally块放关闭弹窗和关闭网页的清理动作。这样某个关键词搜索页挂了流程不会整体崩掉继续巡下一个。网页自动化三个硬骨头等待、翻页、动态加载等待策略三种等待的区别与选择影刀里有三类等待选错就是踩坑的开始。固定等待等待几秒最不推荐网络一慢就抓空等待元素(web)指令可以等元素出现或消失超时后自动往下走并返回True/False这是巡检场景的主力打开网页指令自带的等待网页加载完成参数管页面整体加载建议超时设20秒。翻页不确定总页数怎么办舆情搜索结果经常翻到很多页你不知道总页数。通用做法是While条件循环每页抓完数据后用IF 元素可见(web)判断下一页按钮是否处于可点击状态。很多网站翻到底后按钮的class里会出现disabled用XPath//a[contains(class,next) and not(contains(class,disabled))]判断抓不到这个元素就说明到头了跳出循环。懒加载与滚动部分站点下拉才加载更多用滚动鼠标滚轮指令滚到底部再用等待元素(web)等新内容出现配合index去重把已抓到的条数记下来新加载的从上次的位置继续取。数据处理Excel落表与文本清洗抓下来的数据先写进Excel。用写入内容至Excel工作表指令配合行号变量逐行追加如果数据量大先攒进数据表格最后一次性写入表格数据到工作表速度比逐行写快很多。清洗主要靠文本指令和Python。发布时间经常是3小时前“昨天 18:22这种相对时间用从文本中提取内容或截取一段文本初步切分复杂的交给插入代码段(Python)”# 输入网页抓到的相对时间字符串变量 t 的值如 3小时前# 输出标准化后的小时数 hours_agoimportre tt.strip()# 去掉两端空格网页抓取常带隐藏换行符mre.search(r(\d)\s*分钟前,t)ifm:hours_agoround(int(m.group(1))/60,2)# 分钟转小时else:mre.search(r(\d)\s*小时前,t)hours_agoint(m.group(1))ifmelse24# 昨天按24小时算超过预警阈值比如6小时内的新内容就标记为紧急进入告警分支。鼠标键盘与图像自动化登录态和验证码兜底多数舆情站点需要登录Cookie过期时页面会跳到登录页。流程开头用IF 元素可见(web)判断登录框是否存在存在就先走登录子流程。遇到滑块或点选验证码元素定位基本无效这时候用图像自动化用等待图像指令等验证码弹窗出现再用点击图像按图像匹配去点。影刀的图像指令支持锚点九宫格位置加偏移量滑块场景常用从元素中心偏移X像素的方式拖拽。验证码识别率不高的平台更稳妥的做法是流程开头检测到验证码时直接发消息通知人来处理别硬刚。进阶技能网页监听与HTTP请求比页面抓取更稳有的站点前端做了反爬混淆页面上抓文本很费劲但数据其实是一次接口请求返回的JSON。影刀的开始监听网页请求指令可以指定监听某个接口地址触发搜索后用使用网页监听指令获取数据拿到原始JSON响应再用Python解析字段。这条路绕过了页面渲染稳定性比抓页面高一个档次。对于完全公开的数据源也可以直接用HTTP类指令发GET请求拿JSON省掉打开浏览器的开销。两种方式我都用过结论是优先监听次选页面抓取最后才考虑纯HTTP因为纯HTTP要自己处理Cookie和签名。系统联动飞书群告警与定时触发器告警推送用飞书群通知指令在飞书群里添加自定义机器人拿到webhook地址填进指令的机器人地址参数如果机器人开了签名校验把密钥填到签名校验参数。消息格式选文本类型支持用at user_idall所有人/at全员紧急舆情用得上。# 飞书告警消息模板拼接后传入飞书群通知指令 【舆情告警】关键词{关键词} 标题{标题} 链接{链接} 发现时间{当前时间}定时巡检用定时触发器支持每日触发、每周触发、自定义间隔和Cron表达式还可以设置跳过法定节假日。我的配置是工作时段每30分钟一次巡检每天早上9点额外跑一次全量汇总。触发器要生效记得确保高级任务计划已启用这台机器不能关机休眠——Windows电源设置里把睡眠关掉我就因为电脑自动休眠漏报过一晚上舆情。企业版调度中心还有任务监控页面可以配置告警邮箱和钉钉群计划任务执行异常时自动收到提醒人不在电脑前也知道流程挂没挂。工程化规范子流程拆分让系统可维护别把所有逻辑堆在一个主流程里。我的拆法是五个子流程登录保活、单关键词巡检、数据落表、去重判断、飞书告警主流程只负责循环调度。每个子流程用编号命名比如02_单关键词巡检参数用输入输出变量传递告警子流程以后换个业务场景直接复用。调试时善用断点在指令上右键添加断点单步执行配合变量面板看每一步的值。命名规范也重要变量统一用小写下划线比如 last_check_time三个月后回来看流程不费劲。易错速查表我踩过的坑都在这现象原因解决办法相同舆情反复告警没有持久化去重字典每次运行清空链接存Excel或数据库启动时先读入字典翻页翻到第二页就报错下一页按钮disabled后仍尝试点击用IF 元素可见(web)判断可点击状态再翻定时任务半夜没跑电脑休眠或插件被浏览器禁用关闭系统睡眠插件设为允许始终运行抓到的文本带换行和空格网页节点里有隐藏字符写入前统一strip或用删除文本两端空格类指令飞书消息发不出去webhook填错或签名校验没配密钥重新复制机器人webhook核对签名密钥学习资源与延伸阅读官方文档和影刀学院的视频课程建议先过一遍网页自动化和异常处理两个专题比我这篇讲得系统。这套舆情巡检系统的完整流程源码我放在代码仓库 home.linyan.cloud可以直接参考改造把关键词表和飞书机器人换成你自己的就能跑。#影刀RPA #RPA自动化 #舆情监控 #数据采集 #定时任务 #飞书通知作者林焱
返回列表