项目概览
ScrapeGraphAI是一款革命性的智能网络爬虫工具,利用人工智能技术彻底改变了传统数据采集方式。无论你是数据分析师、市场研究员还是开发者,这款工具都能帮你轻松获取网页信息,无需编写复杂代码。
该工具基于LangChain构建,使用大型语言模型和直接图逻辑来创建网站和本地文档的抓取管道。支持多种格式的本地文件,包括XML、HTML、JSON、Markdown等。只需告诉它你想要提取什么信息,库就会自动为你完成!
快速安装配置
在命令行中使用以下命令安装ScrapeGraphAI库及其依赖:
pip install scrapegraphai
playwright install
推荐在虚拟环境中安装以避免与其他库产生冲突。
核心功能模块
ScrapeGraphAI提供了多种标准抓取管道,每种管道都针对不同的使用场景进行了优化:
SmartScraperGraph - 智能单页抓取
这是最常用的抓取管道,只需要用户提示和源URL就能从单个页面提取信息。
SearchGraph - 多页搜索抓取
从搜索引擎的前n个搜索结果中提取信息的多页抓取器。
SpeechGraph - 语音输出抓取
从网站提取信息并生成音频文件的单页抓取器。
ScriptCreatorGraph - 脚本生成抓取
从网站提取信息并生成Python脚本的单页抓取器。
其他重要模块
- SmartScraperMultiGraph:多页抓取器,根据单个提示和源列表从多个页面提取信息
- ScriptCreatorMultiGraph:多页抓取器,为从多个页面和源提取信息生成Python脚本
- 每种图形都有多版本,可以并行调用LLM
实战应用案例
基础单页抓取示例
from scrapegraphai.graphs import SmartScraperGraph
graph_config = {
"llm": {
"model": "ollama/llama3.2",
"model_tokens": 8192
},
"verbose": True,
"headless": False,
}
smart_scraper_graph = SmartScraperGraph(
prompt="从网页中提取有用信息,包括公司业务描述、创始人和社交媒体链接",
source="https://scrapegraphai.com/",
config=graph_config
)
result = smart_scraper_graph.run()
多模型支持
ScrapeGraphAI支持通过API使用不同的LLM,如OpenAI、Groq、Azure和Gemini,或使用Ollama的本地模型。
对于OpenAI和其他模型,只需要更改llm配置:
graph_config = {
"llm": {
"api_key": "YOUR_OPENAI_API_KEY",
"model": "openai/gpt-4o-mini",
},
"verbose": True,
"headless": False,
}
输出数据结构
抓取结果通常以字典形式返回,包含以下典型字段:
{
"description": "ScrapeGraphAI将网站转换为干净、有组织的数据,供AI代理和数据分析使用。它提供了一个AI驱动的API,用于轻松且经济高效的数据提取。",
"founders": [
{
"name": "",
"role": "创始人兼技术负责人",
"linkedin": "https://www.linkedin.com/in/perinim/"
},
{
"name": "Marco Vinciguerra",
"role": "创始人兼软件工程师",
"linkedin": "https://www.linkedin.com/in/marco-vinciguerra-7ba365242/"
},
{
"name": "Lorenzo Padoan",
"role": "创始人兼产品工程师",
"linkedin": "https://www.linkedin.com/in/lorenzo-padoan-4521a2154/"
}
],
"social_media_links": {
"linkedin": "https://www.linkedin.com/company/101881123",
"twitter": "https://x.com/scrapegraphai",
"github": "https://github.com/ScrapeGraphAI/Scrapegraph-ai"
}
}
应用场景
商业情报收集
- 竞品监控:自动追踪竞争对手产品价格和功能更新
- 市场趋势分析:实时采集行业数据和用户评价数据
新闻资讯聚合
- 多源新闻汇总:从不同媒体平台抓取相关报道
- 智能内容摘要:利用AI自动生成新闻要点提炼
数据挖掘分析
- 结构化数据提取:将网页信息转化为标准数据格式
- 机器学习预处理:为算法模型提供高质量训练数据
生态系统集成
ScrapeGraphAI提供与流行框架和工具的无缝集成,以增强您的抓取能力。无论您使用Python还是Node.js构建,使用LLM框架,还是使用无代码平台,我们都通过全面的集成选项为您提供支持。
集成选项包括:
- API集成:提供完整的API文档和SDK
- LLM框架集成:支持Langchain、Llama Index、Crew.ai等
- 低代码框架集成:与Pipedream、Bubble、Zapier等平台集成
最佳实践建议
- 明确目标导向:在启动前清晰定义所需数据字段
- 环境隔离管理:使用虚拟环境确保项目稳定性
- 异常处理机制:配置完善的错误捕获和重试策略
- 合规性检查:确保采集行为符合网站使用条款
项目信息
当前版本:1.64.0 支持Python版本:>=3.10,<4.0 许可证:MIT
开始使用
要开始使用ScrapeGraphAI,您可以克隆项目仓库:
git clone https://gitcode.com/GitHub_Trending/sc/Scrapegraph-ai
然后按照上述安装步骤配置环境,并尝试运行提供的示例代码。
通过ScrapeGraphAI,您可以将复杂的网络抓取任务简化为简单的自然语言指令,大大提高数据采集的效率和准确性。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考





