Hacker News 中文摘要

RSS订阅

让AI构建爬虫应该很简单吧? -- Asking AI to build scrapers should be easy right?

文章摘要

文章介绍了Skyvern AI的新功能,它能够自动编写和维护爬虫代码,使成本降低2.7倍、速度提升2.3倍。该开源工具结合计算机视觉和大语言模型,可将自然语言提示转化为浏览器自动化操作,适用于技术和非技术用户,支持求职申请、发票提取等多种场景。

文章总结

标题:让AI编写爬虫代码应该很简单,对吧?

内容概述:

Skyvern是一款开源工具,通过AI帮助企业在浏览器中实现自动化操作。它结合计算机视觉和大型语言模型(LLM),将用户指令转化为自动化流程,适用于技术和非技术用户,涵盖求职申请、发票获取、政府表格填写等场景。

核心挑战:
虽然让AI编写自动化脚本听起来简单,但实际操作中面临两大难题:
1. 需求模糊性:自动化需求往往难以清晰定义,甚至人类也难以准确描述。
2. 网络复杂性:网页元素混乱(如下拉框伪装成文本框、默认勾选的复选框),导致静态脚本易失效。

解决方案:推理模型
通过引入推理模型,Skyvern实现了两大突破:
- 提升代理(agent)的准确性至生产可用水平。
- 让代理能基于运行轨迹生成类似工程师编写的代码。

实际案例:
以美国特拉华州政府网站(Delaware.gov)的EIN税务登记为例,初始生成的脚本因以下问题失败:
- 耦合交互:单选按钮逻辑关联,但DOM未体现,导致脚本无法动态适应。
- 随机故障:政府网站在夜间宕机或页面布局变更,静态脚本无法处理。

技术实现:探索与回放模式
1. 探索模式:代理学习网站流程,记录操作轨迹和元数据。
2. 回放模式:将学习结果编译为确定性Playwright脚本,仅在遇到新问题时回退到代理处理。
- 关键改进:捕获操作意图(如“选择企业类型:公司”),使脚本能通过意图匹配恢复异常(如选择器失效时尝试替代方案)。

效果提升:
- 速度提升2.3倍(平均运行时间从278.95秒降至119.92秒)。
- 成本降低2.7倍(每次运行从0.11美元降至0.04美元)。
- 运行结果从非确定性变为确定性。

应用场景:
- 发票下载:自动登录供应商平台,适应布局变更。
- 政府采购:处理多步骤表单,应对页面异常。
- 数据提取:从老旧系统中抓取数据并结构化存储。

未来优化方向:
1. 跨运行分析,自动生成更通用的代码。
2. 缓存数据提取逻辑,降低LLM调用成本。
3. 通过SDK开放脚本自动生成功能。

体验方式:
可通过开源版本云端服务试用。

(注:原文中的图片链接及部分技术细节已简化,保留核心逻辑和案例。)

评论总结

以下是评论内容的总结,平衡呈现不同观点并保留关键引用:

  1. 关于是否使用浏览器自动化的争议

    • 支持简单爬取:若网站未使用Cloudflare或纯JS设计,BeautifulSoup比Playwright更高效稳定。
      "If a website isn't using Cloudflare or a JS-only design, it's generally better to skip playwright." (showerst)
    • 反对过度依赖爬虫:爬取是扩展问题而非推理挑战,且优质网站往往反爬严格。
      "scrapping is a scaling issue, not reasoning challenge. also the most interesting websites are not keen for new scrappers." (franze)
  2. 视觉驱动与代码生成的优劣

    • 视觉方案更优:如OpenAI Operator等基于视觉的方法更灵活,但不易生成代码。
      "vision based approaches are superior, but they are less amenable to codegen." (philipbjorge)
    • 本地模型替代:开源小模型在HTML提取任务上可媲美GPT-5且成本更低。
      "We built 3B and 8B models that rival GPT-5 at HTML extraction while costing 40-80x less." (nithril)
  3. AI爬虫的实际效果

    • 成功案例:AI大幅降低维护成本,实现自修复系统。
      "LLMs have reduced my maintenance work on scraping tasks... by 99%." (pennaMan)
    • 失败案例:Skyvern曾无法处理特定网站(如Yelp类站点)。
      "I tried skyvern... it didn’t work for scraping a site that sounds like welp." (moomoo11)
  4. 技术挑战与局限性

    • 反爬难题:Cloudflare/CAPTCHA/指纹识别是最大障碍。
      "the hardest part of scrapping is bypassing Cloudflare/captchas/fingerprinting." (guluarte)
    • LLM编码局限:当前架构存在概念处理上限,复杂任务需人工引导。
      "there is some sort of practical limit to how many concepts an LLM can hold into account." (pdp)
  5. 其他观点

    • 企业需求:合规协议是采用工具的关键考量。
      "I'd be all over Skyvern if only they had enterprise compliance agreements." (herpdyderp)
    • 人机协作:人类经验仍不可替代,过度依赖AI存在风险。
      "If the AI you rely on fails, you are dead in the water." (pcblues)

(注:部分评论因无关或幽默未纳入总结,如Claysmithr误读"skyscrapers")