采不到数据怎么办
明明跑完了,导出来却是空的、或者少了一大半。本篇按「最可能的原因」排了个顺序, 从上往下查就行。
一、先查这个:窗口被最小化,或页面被浏览器休眠
原因:浏览器会主动"冻住"你很久没看的标签页来省电。页面一旦被冻住, 上面的内容就不再更新,去读的时候只能读到一片空白——而且不一定会报错。
什么时候容易中招:采集时去干别的事了、把窗口缩到最小、笔记本拔了电源进省电模式、 采的页数很多跑了很久。
怎么确认:去执行日志里搜这句话(原文):
运行页被浏览器休眠(后台标签页),心跳自检本拍跳过
看到它,基本就是这个问题了。
怎么办(三步,第 1 步别跳过):
- 把两处省电策略关掉,不然重跑还是白跑:
- 浏览器:地址栏输入
chrome://settings/performance(Edge 是edge://settings/system), 把冻结后台标签页的那个开关关掉; - 电脑:设置 -> 系统 -> 电源和睡眠,把「睡眠」的两个下拉都改成「从不」, 笔记本还要去「控制面板 -> 电源选项 -> 选择关闭盖子的功能」把合盖改成「不采取任何操作」。
- 浏览器:地址栏输入
- 这次的数据别用,回「主工作台」再点一次启动键重跑。
- 跑的时候把窗口留在屏幕上,笔记本插上电。
完整的图文步骤见长时间采集防休眠——那篇第三节就是专门讲这件事的。
- 把两处省电策略关掉,不然重跑还是白跑:
一句话版本
采集期间把窗口留着,别最小化,笔记本插上电源。 想根治,就去长时间采集防休眠第三节把浏览器的休眠和电脑的睡眠关掉。
二、页面根本没加载完
网页数据是一点点刷出来的,页面还没就绪就去读,自然读不到。
- 日志里的说法:
页面未就绪(已等待 N 秒),无法执行采集 - 怎么办:在采集需求末尾加一句等待,比如
每次翻页后等待 3 秒。 - 这类页面还有一种情况是滚动才出数据,见滚动加载采集。
三、数据其实在,但你没登录 / 卡在验证码
- 日志里的诊断标签会写 「需要登录」 或 「需要过验证码」。
- 怎么办:先在浏览器里正常登录目标网站,打开目标页确认肉眼能看到数据,再跑一次。
- 详见需要登录的网站怎么采。
验证码必须你本人过
验证码是防机器的,扩展不会也没办法替你绕过。遇到验证码时, 需要你在打开的页面里手动过一下,运行会等你。
四、页面改版了,老工作流认不出新页面
- 日志里的诊断标签会写 「站点已改版」 或 「未能采集到数据」。
- 怎么办:回到「AI 编译生成」,把采集需求重新描述一遍,让 AI 重新分析页面、 生成新的工作流。
这是正常现象,不是扩展坏了
工作流是照着当时的页面编出来的。网站一改版,它就会失准—— 这跟"复制了一把钥匙,对方把锁换了"是一个道理。
五、翻页翻丢了
日志里会出现(原文):
采集第一个网址,失败则跳过这一条 打开并采集这一条网址,失败则跳过这一条
这是批量采集时某一条网址出了问题,系统跳过它继续跑下一条。 属于设计如此——一条坏链接不该拖垮整批。详见批量采集。
怎么查:把那条失败的网址单独打开,看还能不能正常访问。
六、两个冷门但会遇到的情况
| 日志原文 | 什么情况 |
|---|---|
标签页已关闭,无法执行采集 | 跑的过程中,有人把那个页面关掉了 |
未找到要执行采集的页面,请重试 | 当前没有可用的目标页,重新打开目标页再跑 |
七、都不是?
导出执行日志发给我们。方法见常见问题与报错排查里 「把日志发给我们」那一节。