您的位置:首页 > 财经 > 金融 > 探索数据新境界:ScrapeGraphAI,一键触发智能网络抓取革命

探索数据新境界:ScrapeGraphAI,一键触发智能网络抓取革命

2024/12/23 11:13:04 来源:https://blog.csdn.net/u010764910/article/details/139526573  浏览:    关键词:探索数据新境界:ScrapeGraphAI,一键触发智能网络抓取革命

文章目录

  • 🚀 探索数据新境界:ScrapeGraphAI,一键触发智能网络抓取革命
    • 一、介绍
    • 二、环境
    • 三、实例

🚀 探索数据新境界:ScrapeGraphAI,一键触发智能网络抓取革命

一、介绍

🌟【技术控必备】🛠️小红书技术宅的福音来啦!🎉

👩‍💻👨‍💻各位编程大佬们,是不是还在为手动抓取网页数据头疼?今天给大家安利一个超给力的Python库——ScrapeGraphAI!

🌈这不仅仅是一个库,它是打开数据大门的钥匙!用上它,就像有了一台自动挖掘机,只要你指明方向,它就能帮你深挖出宝藏!

🔍 ScrapeGraphAI用上了超先进的大型语言模型和直接图逻辑,不管是网站还是本地的XML、HTML、JSON文档,统统都能搞定!

💬告诉它你的需求,剩下的就交给ScrapeGraphAI吧!它就像你的个人数据助理,智能、高效、精准,让你的数据提取工作变得轻松又简单。

🔥 快来试试ScrapeGraphAI,让你的数据提取工作飞起来!告别繁琐,迎接效率,就在此刻!#技术改变生活 #数据提取神器 🚀🌟

二、环境

在开始使用ScrapeGraphAI之前,确保你的开发环境已经准备就绪是至关重要的。以下是一些基本步骤,用于设置一个支持这些工具和库的完整开发环境。

  1. 安装Ollama和Mistral模型:
    使用Ollama的专用命令行工具来下载所需的模型。例如,使用以下命令来安装Mistral模型:

    ollama pull mistral
    ollama pull nomic-embed-text
    
  2. 设置Python虚拟环境:
    使用Python的venv模块创建一个虚拟环境,以隔离项目依赖。这可以通过以下命令完成:

    python -m venv venv
    
  3. 激活虚拟环境:
    在Windows系统上,使用以下命令激活虚拟环境:

    .\venv\Scripts\activate
    

    而在Unix或MacOS系统上,使用:

    source venv/bin/activate
    
  4. 安装必要的Python包:
    使用pip安装scrapegraphai库,这可能是与Ollama或Mistral交互所需的:

    pip install scrapegraphai
    
  5. 安装Playwright:
    Playwright是一个Node.js库,用于自动化Chromium、Firefox和WebKit。如果需要进行浏览器自动化测试或生成,确保安装Playwright:

    playwright install
    

完成以上步骤后,你的开发环境应该已经配置好,可以开始使用Ollama、Mistral和其他相关工具进行开发和测试。

三、实例

ScrapeGraphAI提供了三种主要的抓取管道:

  • SmartScraperGraph:用于单页网站的抓取,用户只需提供提示和输入源。
  • SearchGraph:用于多页网站的抓取,能够从搜索引擎结果中提取信息。
  • SpeechGraph:从网站提取信息并生成音频文件。
  • SmartScraperMultiGraph:多页网站的抓取,适用于更复杂的场景。

这些管道可以与不同的LLM(Large Language Model)API一起使用,包括OpenAI、Groq、Azure和Gemini,或者使用Ollama的本地模型。

以下是使用ScrapeGraphAI的SmartScraperGraph的一个例子:

from scrapegraphai.graphs import SmartScraperGraphgraph_config = {"llm": {"model": "ollama/mistral","temperature": 0,"format": "json",  # Ollama 需要显式指定格式"base_url": "http://localhost:11434",  # 设置 Ollama URL},"embeddings": {"model": "ollama/nomic-embed-text","base_url": "http://localhost:11434",  # 设置 Ollama URL},"verbose": True,
}smart_scraper_graph = SmartScraperGraph(prompt="List me all the projects with their descriptions",# 也接受已下载的 HTML 代码的字符串source="https://perinim.github.io/projects",  config=graph_config
)result = smart_scraper_graph.run()
print(result)

这段Python代码使用了scrapegraphai库中的SmartScraperGraph类来创建一个智能的数据抓取流程。下面是对代码的逐行解释:

from scrapegraphai.graphs import SmartScraperGraph

这行代码从scrapegraphai库中导入SmartScraperGraph类,这个类是用于构建和运行数据抓取图的。

graph_config = {# ... configuration settings ...
}

这里定义了一个字典graph_config,它包含了用于配置智能抓取图的设置。这些设置包括使用的LLM(Large Language Model,大型语言模型)模型、嵌入模型、以及其他参数。

"llm": {# ... LLM specific configurations ...
},

这部分是LLM模型的配置,包括模型名称、温度参数(影响生成结果的随机性)、输出格式,以及Ollama模型服务的URL。

"embeddings": {# ... embeddings specific configurations ...
},

这部分是嵌入模型的配置,指定了嵌入模型的名称和模型服务的URL。

"verbose": True,

这个设置开启详细模式,意味着在抓取过程中会打印更多的日志信息。

smart_scraper_graph = SmartScraperGraph(prompt="List me all the projects with their descriptions",source="https://perinim.github.io/projects", config=graph_config
)

这行代码创建了SmartScraperGraph的一个实例。初始化时传入了抓取的提示(prompt),要抓取的网页源(source),以及前面定义的配置(config)。

result = smart_scraper_graph.run()

调用run方法来执行智能抓取图,执行完成后,抓取结果会被存储在变量result中。

print(result)

最后,打印出抓取结果,这样我们就可以看到从指定网页抓取的项目及其描述。

需要注意的是,代码中的source参数是一个URL,指向需要抓取的网页。如果网页无法访问或解析失败,可能是因为网络问题、URL错误、或者网页结构变化导致抓取失败。如果用户需要解析特定网页,应确保网页链接的有效性,并在必要时检查网络连接或重试。如果不需要解析网页,代码仍然可以执行,但result将不会包含预期的数据。

美女镇楼
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com