写点什么

LLM 实战:当网页爬虫集成 gpt3.5

  • 2024-05-21
    福建
  • 本文字数:1347 字

    阅读完需:约 4 分钟

1. 背景


最近本 qiang~关注了一个开源项目 Scrapegraph-ai,是关于网页爬虫结合 LLM 的项目,所以想一探究竟,毕竟当下及未来,LLM 终将替代以往的方方面面。


这篇文章主要介绍下该项目,并基于此项目实现一个 demo 页面,页面功能是输入一个待爬取的网页地址以及想要从网页中抽取的内容,最后点击按钮实现网页抓取及解析。


2. 模块简介


2.1 Scrapegraph-ai



该项目是一个网页爬虫的 python 包,使用 LLM 和直接图逻辑(direct graph logic)来为网页和本地文档(XML, HTML, JSON)创建爬取管道(pipeline)。


2.2 GPT-3.5 免费申请,且国内可访问


GPT3.5-Turbo 免费申请可以在开源项目GPT_API_free进行访问,其中该项目有免费申请的地址,以及网页插件、桌面应用安装等教程,在日志工作学习中,使用起来非常丝滑~


其次,国内访问 gpt3.5 可以基于该项目提供的代理: https://api.chatanywhere.tech/v1来实现访问。


3. 实战


3.1 安装第三方包

# 网页开发包,和Gradio类似pip install streamlit# 爬虫相关包pip install playwrightplaywright installplaywright install-deps # 安装依赖
复制代码


3.2 设置 gpt3.5 代理环境变量、

import osos.environ['OPENAI_API_BASE'] = 'https://api.chatanywhere.tech/v1'OPEN_API_KEY = 'sk-xxxxx'
复制代码


3.3 创建网页元素

import streamlit as st
st.title('网页爬虫AI agent')st.caption('该app基于gpt3.5抓取网页信息')
url = st.text_input('属于你想抓取的网页地址URL')user_prompt = st.text_input('输入你想要从该网页获取知识的prompt')
复制代码


3.4 基于 scrapegraph-ai 包构建图配置以及创建图逻辑

from scrapegraphai.graphs import SmartScraperGraph
# 图配置信息,默认调用gpt3.5,其次embedding模型未设置,但阅读源码后,可以发现默认走的是openai的embedding模型graph_config = { 'llm': { 'api_key': OPEN_API_KEY, 'model': 'gpt-3.5-turbo', 'temperature': 0.1 }}
# 创建直接图逻辑smart_scraper_graph = SmartScraperGraph( prompt=user_prompt, # 用户输入的prompt source=url, # 用户输入的url config=graph_config)
# 增加一个按钮进行爬取、解析及页面渲染if st.button('爬取'): result = smart_scraper_graph.run() st.write(result)
复制代码


3.5 运行启动

streamlit run scrape_web_openai.py
复制代码

 

3.6 底层原理


通过研读 SmartScraperGraph 源码,底层直接图逻辑的原理如下图所示。分为抓取、解析、RAG、答案生成,并默认以 json 格式输出

 

 

4. 效果


4.1 新闻类


网址:ps://news.sina.com.cn/w/2024-05-20/doc-inavwrxq4965190.shtml



4.2 公众号


https://mp.weixin.qq.com/s/rFYXKiedqmVo5URDxlbHzA

 

 

针对一些简单的网页如新闻网页等,可以正常爬取,但响应时间在 10s 以上,针对一些复杂的页面,如包含鉴权、反爬机制等,可能无法正常爬取。


5. 总结


一句话足矣~


本文主要是通过 Scrapegraph-ai 集成 gpt3.5 实现一个简单的网页爬取并解析的 demo 应用,其中涉及到 gpt3.5 免费申请,Scrapegraph-ai 底层原理简介,demo 应用源码等。


之后会写一篇关于 Qwen7B 和 BGE 的相似度模型,与 Scrapegraph-ai 集成的 demo 应用,敬请期待 ~


文章转载自:mengrennwpu

原文链接:https://www.cnblogs.com/mengrennwpu/p/18202776

体验地址:http://www.jnpfsoft.com/?from=infoq

用户头像

还未添加个人签名 2023-06-19 加入

还未添加个人简介

评论

发布
暂无评论
LLM实战:当网页爬虫集成gpt3.5_GPT_不在线第一只蜗牛_InfoQ写作社区