Zyte

2026-07-07发布 1,553 0 0

用同一商品 URL 对照三种材料后再固化抽取策略

所在地:
USA
语言:
en
收录时间:
2026-07-07

Zyte API 把 HTTP 获取、浏览器渲染和自动结构化抽取放进同一 POST https://api.zyte.com/v1/extract 入口。认证使用 Basic(API Key 作为用户名、密码留空)。接入时最容易浪费的,是还没证明需要渲染,就把所有 URL 都打成浏览器请求。正确做法是用同一商品页做材料对照,再把胜出策略写进生产配置。

固定一个可公开复核的商品页

官方文档常用 https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html。先手写验收真值:书名、价格字符串、是否有库存提示。后续三轮请求都对该 URL,只改变请求字段,方便比较成本与完整度。把真值表和请求版本号放进同一记录,后面才能判断是页面改版还是策略回退。

第一轮只要 httpResponseBody

请求体只开 httpResponseBody: true。若原始 HTML 已能稳定解析出名称与价格,生产默认就应停在 HTTP 层:更快,也避开浏览器专属限制。浏览器请求不能随意改初始 method/body/自定义头(除 Referer),也不适合拿非 HTML 主体;需要那些能力时另评估 CDP 路线。

第二轮 browserHtml,第三轮 product

第二轮开 browserHtml: true,比较渲染后 DOM 是否补出了 HTTP 缺失的节点;需要画面证据时可同时要 screenshot。默认 iframe 内容为空,必要时再开 includeIframes;Shadow DOM 内容通常要靠 actions 里的 evaluate 注入可见节点后才能出现在 HTML 中。第三轮只开 product: true(一次请求不要并行开多种自动抽取类型),读取返回的 product 对象。可用 productOptions.extractFrom 显式指定 httpResponseBody、browserHtmlOnly 或 browserHtml;不写明时默认可能变化,生产配置应写死。

轮次 主要字段 若失败先查
HTTP httpResponseBody 是否根本不需要 JS
浏览器 HTML browserHtml / screenshot 等待、弹窗、iframe、Shadow DOM
自动商品 product + extractFrom 类型是否选错、字段空值率

把对照结论写成可执行策略

若 HTTP 已稳定得到名称与价格,就不要默认升浏览器。只有缺字段或动态加载时,才把 extractFrom 升到浏览器侧,并记录费用与耗时。动作、cookie、地理与会话选项只服务于既定字段,避免把每次抽取做成完整交互剧场。上线后若 product 突然变空,先用同一 URL 重跑 HTTP 与 browserHtml 对照,区分站点改版和抽取模型漂移。

  1. 保存三轮原始响应与字段对照表。
  2. 选定默认层与 extractFrom,写入客户端配置。
  3. 对必填字段做类型、空值、币种/价格格式校验。
  4. 抽查原页,确认不是缓存或错误 SKU。
  5. 为阻断、超时、空 product 分设告警,而不是混成一个失败码。

产品与文档:https://www.zyte.com/ 、https://docs.zyte.com/

数据统计

相关导航

暂无评论

您必须登录才能参与评论!
立即登录
none
暂无评论...