智能爬虫ScrapeGraphAI尝鲜

ScrapeGraphAI是一个创新的Python库,它融合了大型语言模型(LLM)和直接图逻辑,为用户提供了一种高效的方法,用于构建针对网站、文档和XML文件的爬虫流水线。以下是关于ScrapeGraphAI的详细介绍:

一、核心特点

  1. 智能化
    • ScrapeGraphAI能够智能地将用户的需求转化为有效的爬取策略,利用先进的自然语言处理技术和图形结构,自动识别和解析网页元素,以提取所需信息。
    • 它支持多种交互方式,包括Ollama、Docker、OpenAI模型、Groq、Azure以及Gemini等,确保在各种环境下都能灵活运作。
  2. 易用性
    • 提供了简洁的API设计,允许用户通过简单的指令来实现复杂的网页数据抽取任务。
    • 详尽的文档和示例,助力用户快速学习和应用。
  3. 灵活性
    • 支持多种大型语言模型和运行环境,如GPT、Gemini、Groq、Azure等,以及本地模型。
    • 提供了多种抓取管道,如SmartScraperGraph(用于单页网站抓取)、SearchGraph(用于多页网站抓取)、SpeechGraph(从网站提取信息并生成音频文件)等,满足不同场景的需求。
  4. 可扩展性
    • 易于整合新的数据源和解析策略,随着技术的发展和用户需求的变化,ScrapeGraphAI能够持续进化。

二、应用场景

ScrapeGraphAI可以在多个领域发挥作用,包括但不限于:

  • 自动化数据收集:如市场趋势分析、竞争对手监控等。
  • 网站维护和更新:定期检查页面变化,确保网站内容的准确性和时效性。
  • 内容管理系统的填充:自动导入结构化信息,提高内容管理效率。
  • 学术研究:从在线资源中抓取相关文献信息,为学术研究提供数据支持。

三、安装与配置

要使用ScrapeGraphAI,用户需要按照以下步骤进行安装和配置:

1、安装Python环境:确保您的计算机上已安装Python,版本>3.8。

2、创建虚拟环境:使用Python的venv模块创建一个虚拟环境,以隔离项目依赖。

conda create -n Scrapegraph python=3.10 -y
conda activate Scrapegraph

        ​​

3、安装ScrapeGraphAI:使用pip命令安装ScrapeGraphAI库和Playwright。

pip install pytest-playwright
pip install scrapegraphai
playwright install

4、配置LLM模型:根据需要配置LLM模型,包括模型名称、温度参数、输出格式等。

本文中采用ollama模型,如何安装请参考网上的教程。

编写抓取脚本:使用ScrapeGraphAI提供的API编写抓取脚本,指定要抓取的网页和数据类型。

四、示例代码

以下是一个使用ScrapeGraphAI的SmartScraperGraph类的示例代码,希望抓取csdn博文的关键信息:

from scrapegraphai.graphs import SmartScraperGraph

graph_config = {
    "llm": {
        "model": "ollama/qwen2:7b",
        "temperature": 0,
        "format": "json",  # Ollama needs the format to be specified explicitly
        "base_url": "http://10.33.19.16:11434",  # set Ollama URL
    },
    "embeddings": {
        "model": "ollama/quentinz/bge-large-zh-v1.5:lates",
        "base_url": "http://10.33.19.16:11434",  # set Ollama URL
    },
    "verbose": True,
}

smart_scraper_graph = SmartScraperGraph(
    prompt="获取文章的标题、作者、发布时间、阅读量、点赞数、收藏数",
    # also accepts a string with the already downloaded HTML code
    source="https://blog.csdn.net/m0_59235945/article/details/140333596",
    config=graph_config
)

result = smart_scraper_graph.run()
print(result)

运行结果如下(通过json格式输出):

原始博文如下:

对比发现,该工具很多属性都解析错误了,而且最大的问题就是它将原文内容进行了润色翻译,导致严重失真。所以该工具的实用场景有待进一步论证,总体来讲,还有很多无法解决的问题。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值