news 2026/9/3 13:42:55

3 步跑通 AI 爬虫:Scrapegraph-ai 自然语言爬网页完整入门

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
3 步跑通 AI 爬虫:Scrapegraph-ai 自然语言爬网页完整入门

3 步跑通 AI 爬虫:Scrapegraph-ai 自然语言爬网页完整入门

【免费下载链接】Scrapegraph-aiPython scraper based on AI项目地址: https://gitcode.com/GitHub_Trending/sc/Scrapegraph-ai

你写过一批 CSS 选择器,第二天页面改版就全失效吗?Scrapegraph-ai 是一个基于 LLM 的 Python 爬虫库:你用一句自然语言描述要什么数据,它自己完成网页抓取、解析与摘要生成,不用手写选择器。读完本文你能搭好你的第一个 AI 抓取管道,并会切换本地与云端模型。

为什么选它:替代选择器、浏览器脚本和手动粘贴

如果你还在对着页面结构逐个写选择器,传统做法是手搓 BeautifulSoup 脚本:页面不变时很快,结构一变就得整段重写。Scrapegraph-ai 的输入是一句自然语言,页面结构交给模型处理,页面改版后脚本不用动。

如果你还在用 Selenium 处理浏览器驱动、页面加载时机和反爬重试,这些细节都要自己盯。Scrapegraph-ai 把 Playwright 抓取封装在管道内部,配置里一个headless参数控制是否弹出浏览器窗口,一行自动化代码都不用写。

如果你只是把抓到的网页粘进聊天框问 LLM,抓取和解析两步仍然是手动的,输出也是一段没法直接进代码的文本。Scrapegraph-ai 把这几步固化成图:一次run()返回结构化字典,可以直接json.dumps或喂给下游流程。

跑起来:安装、拉模型、写脚本 3 步

第 1 步 安装包和浏览器

pip install scrapegraphai playwright install

预期看到:Python 里import scrapegraphai不报错;playwright install下载完浏览器二进制(首次几分钟)。官方建议装在虚拟环境里,避免和其他项目依赖冲突。

第 2 步 拉取本地模型

本文主路径走 Ollama 本地模型,零 API Key、零调用成本。装好 Ollama 后执行:

ollama pull llama3.2

预期看到:ollama list里出现 llama3.2。更习惯云端模型的话,把llm配置换成 OpenAI,api_key填环境变量OPENAI_API_KEY即可,支持的模型清单见 docs/source/scrapers/llm.rst。

第 3 步 写最小抓取脚本

from scrapegraphai.graphs import SmartScraperGraph graph_config = { "llm": {"model": "ollama/llama3.2", "model_tokens": 4096}, "verbose": True, } scraper = SmartScraperGraph( prompt="Extract the company business, founders, and social media links", source="https://scrapegraphai.com/", config=graph_config, ) print(scraper.run())

预期看到:打印出一个含 description、founders、social_media_links 三个键的字典,内容正是 prompt 要的结构化数据。可运行的对照示例见 examples/smart_scraper_graph/ollama/smart_scraper_ollama.py。

看懂它:一张图看懂 URL 怎么变成 JSON

整条管道四步:

  1. 抓取环节按 URL 拉取完整 HTML,内部走 Playwright,带 JS 渲染的页面也能拿到最终内容,输出交给下一步。
  2. 解析环节清洗 HTML 噪声,并按model_tokens把内容切块,只保留与问题相关的块。
  3. 生成环节让模型基于这些块回答 prompt,产出结构化字典。
  4. 配置"reattempt": True时末尾多一道复判环节:检测到答案为空或 "NA" 会自动重答一次。

不必关心内部节点分工,记住数据流:URL 进、字典出,中间每一步都能用配置开关。

少踩坑:4 个高频问题

运行时报 Playwright 浏览器错误(Executable doesn't exist)。原因是 pip 包装的是驱动,不含浏览器二进制。处理:补跑一次playwright install,抓取网页场景必做。

连不上 Ollama(localhost:11434 connection refused)。原因是 Ollama 服务没启动或模型没拉下来。处理:启动 Ollama 服务后重新ollama pull llama3.2;如果 Ollama 跑在 Docker 容器里,在配置里加base_url指向容器地址,参数说明见 docs/source/scrapers/llm.rst。

结果是空的或 "NA"。原因是模型上下文太小,页面内容没被完整覆盖。处理:先把model_tokens调大(示例脚本用的 4096 就是为此);仍不行就加"reattempt": True,管道会在复判失败后自动重试一轮。

看不到浏览器,没法调页面加载问题。原因是抓取环节默认 headless 运行。处理:配置里设"headless": False,浏览器窗口会弹出来,可以逐步观察页面加载过程。

下一步:单页到批量、多页与自定义

  • 批量多 URL 怎么跑:SmartScraperMultiGraph 对一组 URL 用同一 prompt 并行提取,完整示例见 examples/smart_scraper_graph/ollama/smart_scraper_multi_ollama.py。
  • 搜索式多页抓取:SearchGraph 从搜索引擎前 N 条结果里提取信息,适合新闻聚合,示例在 examples/search_graph/ollama/search_graph_ollama.py。

  • 调优与二次开发:全部管道参数速查在 docs/source/scrapers/graph_config.rst;节点清单(自己组装管道的积木)在 docs/source/modules/scrapegraphai.nodes.rst;想跑测试或提 PR,先看 CONTRIBUTING.md。

自然语言就是你的抓取接口,选择器从此不用维护。现在就去跑一次run()

【免费下载链接】Scrapegraph-aiPython scraper based on AI项目地址: https://gitcode.com/GitHub_Trending/sc/Scrapegraph-ai

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 13:38:51

1553B 板卡

介绍1553B 是军用飞机设备间信息传输总线标准,采用指令/响应型通信协议和双冗余设计。传输媒介为屏蔽双绞线,核心组件包括总线控制器(BC)、远程终端(RT)和总线监视器(BM)。标准支持3…

作者头像 李华
网站建设 2026/9/3 13:35:06

基于RAG技术构建个人知识库智能问答系统实践指南

在个人知识管理领域,Obsidian 凭借其本地优先、双向链接和强大的插件生态,已经成为许多开发者和内容创作者的标配工具。然而,随着 AI 大语言模型能力的普及,单纯的知识记录已经不能满足高效检索和智能问答的需求。传统的关键词搜索…

作者头像 李华
网站建设 2026/9/3 13:33:16

游戏MOD入门:从主菜单替换到沉浸式体验设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 13:32:13

关于笔记本电脑无线显示器安装失败怎么办?

1、投影到此电脑,添加功能,安装无线显示器失败。2、下载 windows update Blocker (针对手动关闭了好多自动更新项且不想逐一恢复的)启用更新-应用3、鼠标右键开始-Windows powershell(管理员)输入DISM /Onl…

作者头像 李华
网站建设 2026/9/3 13:31:12

嘉立创PCB工艺变更:设计师如何应对产线规则动态调整

很多画 PCB 的工程师会把嘉立创这类样板厂的工艺能力表当作一个固定门槛来看:只要满足过一次,后面就一直沿用同一套设计习惯。实际时间长了之后你会发现,PCB 工艺是动态的。材料批次、产线设备、质量良率、环保要求都会让厂商的工艺参数发生变…

作者头像 李华