AI

LLM Scraper:使用 LLM 从网页中提取结构化数据

LLM Scraper 利用大型语言模型从网页中提取结构化数据,将非结构化的 HTML 通过 AI 驱动的解析转换为类型的 JSON 架构。

Keeping this site alive takes effort — your support means everything.
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分! 無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!
LLM Scraper:使用 LLM 从网页中提取结构化数据

传统的网页抓取依赖于脆弱的 CSS 选择器和 XPath 表达式,一旦网站更新其标记就会失效。LLM Scraper 采用了根本不同的方法:它使用大型语言模型语义理解页面内容,并以结构化 JSON 的形式精确提取你需要的数据。

由 mishushakov 构建的这个开源工具弥合了非结构化 HTML 与结构化数据管线之间的差距。无需编写和维护选择器,你只需定义一个你想要提取的类型化架构,LLM 会处理其余部分。

核心能力

能力描述
语义解析LLM 理解页面内容而非匹配模式
类型化架构定义你想要提取的确切数据结构
批量处理高效处理多个页面
多格式输出JSON、CSV 或自定义格式
无头支持可选的浏览器渲染用于 JavaScript 网站

抓取工作流程

工作流程为你提供的 URL 获取 HTML,提取主要内容,将架构定义和内容一起发送到 LLM,并返回匹配架构的结构化 JSON。

架构定义示例

from pydantic import BaseModel
from typing import List

class Product(BaseModel):
    name: str
    price: float
    description: str
    availability: bool

架构使用 Pydantic 模型定义,确保类型安全和验证。LLM 从页面内容中填充这些字段。

性能比较

方法设置时间维护准确率
CSS 选择器30 分钟高(频繁中断)99%(有效时)
XPath45 分钟99%
LLM Scraper5 分钟极低95-99%
正则表达式20 分钟70-85%

如需更多信息,请访问 LLM Scraper GitHub 仓库 并查看 Pydantic 文档

常见问题

Q:LLM Scraper 使用哪些 LLM? A:它支持 OpenAI、Anthropic、Ollama 本地模型以及任何兼容 OpenAI 的 API。

Q:LLM Scraper 可以处理 JavaScript 渲染的页面吗? A:可以,通过可选的 Playwright 集成实现无头浏览器渲染。

Q:速率限制如何处理? A:你可以配置请求之间的延迟并设置最大并发请求数。

Q:提取的准确率如何? A:对于定义良好的架构,准确率通常为 95-99%,具体取决于页面复杂度和内容质量。

Q:我可以为不同页面类型使用自定义提示吗? A:可以,你可以为特定页面模式提供自定义提示和架构。

TAG
CATEGORIES