《爬虫+大模型》到底有没有搞头?

news2024/11/18 19:44:34

最近在学习大模型,之前我是干过一段时间爬虫,在学习大模型的过程中,突发奇想能不能把大模型的能力结合爬虫,搞个AI爬虫玩一玩。

说干就干,先测试一下大模型的数据提取能力

<table width="100%" class="">
    <tbody><tr class="item">
        <td width="100" valign="top">
                <a class="nbg" href="https://movie.douban.com/subject/34453198/&#34;   title="梦境">
                    <img src="https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2910694617.webp&#34;   width="75" alt="梦境" class="">
                </a>
        </td>
        <td valign="top">    
            <div class="pl2">
                <a href="https://movie.douban.com/subject/34453198/&#34;   class="">
                    梦境
                    / <span style="font-size:13px;">仙境 / Wonderland</span>
                </a>
                <p class="pl">2024-06-05(韩国) / 汤唯 / 裴秀智 / 朴宝剑 / 郑有美 / 崔宇植 / 孔刘 / 鲍起静 / 崔武成 / 全秀芝 / 韩国 / 金泰勇 / 113分钟 / 梦境 / 剧情 / 爱情 / 科幻 / 金泰勇 Tae-Yong Kim / 韩语 / 英语 / 汉语普通话</p>             
                    <div class="star clearfix">
                            <span class="allstar30"></span>
                            <span class="rating_nums">6.4</span>
                            <span class="pl">(6899人评价)</span>
                    </div>
            </div>

        </td>
    </tr>
</tbody></table>

<table width="100%" class="">
    <tbody><tr class="item">
        <td width="100" valign="top">
                <a class="nbg" href="https://movie.douban.com/subject/36085987/&#34;   title="犯罪都市4">
                    <img src="https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2903301473.webp&#34;   width="75" alt="犯罪都市4" class="">
                </a>
        </td>
        <td valign="top">
            <div class="pl2">
                <a href="https://movie.douban.com/subject/36085987/&#34;   class="">
                    犯罪都市4
                    / <span style="font-size:13px;">犯罪都市:铁拳清算(港) / The Roundup: Punishment</span>
                </a>
                <p class="pl">2024-02-23(柏林电影节) / 2024-04-24(韩国) / 马东锡 / 金武烈 / 李东辉 / 朴智焕 / 李主傧 / 金敏载 / 金英熊 / 韩国 / 许明行 / 110分钟 / 犯罪都市4 / 动作 / 犯罪 / 惊悚 / 吴相浩 Sang-ho Oh / 韩语 / 英语 / 菲律宾语 / 汉语普通话</p>
                    <div class="star clearfix">
                            <span class="allstar35"></span>
                            <span class="rating_nums">6.6</span>
                            <span class="pl">(23916人评价)</span>
                    </div>
            </div>
        </td>
    </tr>
</tbody></table>

我们将这段HTML交给大模型,让大模型帮我们提取其中的数据,其中提示词是

这是一段电影列表,去获取电影名(name),封面链接(picture),简介(info),评分(score), 评论人数(commetsNumber),请使用括号的单词作为属性名,以JSON数组的格式返回

这是大模型的返回结果

[    {        "name": "梦境",        "picture": "https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2910694617.webp",        "info": "2024-06-05(韩国) / 汤唯 / 裴秀智 / 朴宝剑 / 郑有美 / 崔宇植 / 孔刘 / 鲍起静 / 崔武成 / 全秀芝 / 韩国 / 金泰勇 / 113分钟 / 梦境 / 剧情 / 爱情 / 科幻 / 金泰勇 Tae-Yong Kim / 韩语 / 英语 / 汉语普通话",        "score": "6.4",        "commentsNumber": "6899人评价"    },    {        "name": "犯罪都市4",        "picture": "https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2903301473.webp",        "info": "2024-02-23(柏林电影节) / 2024-04-24(韩国) / 马东锡 / 金武烈 / 李东辉 / 朴智焕 / 李主傧 / 金敏载 / 金英熊 / 韩国 / 许明行 / 110分钟 / 犯罪都市4 / 动作 / 犯罪 / 惊悚 / 吴相浩 Sang-ho Oh / 韩语 / 英语 / 菲律宾语 / 汉语普通话",        "score": "6.6",        "commentsNumber": "23916人评价"    }]

发现可以提取到数据,那么接下来我们去写代码

import requests
from openai import OpenAI
from dotenv import load_dotenv
load_dotenv()

# 需要写自己的api_key  还需要科学上网
client = OpenAI()

url = "https://movie.douban.com/chart"

header = {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36"
}
response = requests.get(url, headers=header)
# print(response)
# print(response.text)

def get_completion(prompt, model="gpt-3.5-turbo"):
    messages = [{"role": "user", "content": prompt}]
    response = client.chat.completions.create(
        model=model,
        messages=messages,
        temperature=0,  # 模型输出的随机性,0 表示随机性最小
    )
    return response.choices[0].message.content

# 我这里是把所有获取的到的页面HTML都交给了大模型,可能token数量会超
prompt = "{} 这是一部电影的html片段。获取需要电影名(name),封面链接(picture),简介(info), 评分(score),评论人数(commentsNumber)。 请使用括号的单词作为属性名,以JSON数组的格式返回".format(response.text)

print(get_completion(prompt))

这段代码就是去获取页面HTML,然后交给大模型去提取数据,大家自己做测试的时候,可以把HTML的范围缩小一点,不然token可能会超

但是这段代码是比较粗糙的,就在我觉得这个事情搞不下去的时候,搜了一下有没有这方面的框架,别说,还真让我搜到了ScrapeGraphAI

github地址:github.com/ScrapeGraph…

根据他的文档写了一个案例

import os
from dotenv import load_dotenv
from scrapegraphai.graphs import SmartScraperGraph
from scrapegraphai.utils import prettify_exec_info
import json

# 从.env加载环境变量
load_dotenv()

# 从环境变量加载openai key
openai_key = os.getenv("OPENAI_APIKEY")

# 配置SmartScraperGraph
graph_config = {
   "llm": {
      "api_key": openai_key,
      "model": "gpt-3.5-turbo",
   },
}

# 创建SmartScraperGraph并运行
smart_scraper_graph = SmartScraperGraph(
   prompt="获取需要电影名(name),封面链接(picture),简介(info), 评分(score),评论人数(commentsNumber)。 请使用括号的单词作为属性名,以JSON数组的格式返回",
   # 接收一个html网页页面
   source="https://movie.douban.com/chart",
   config=graph_config
)

# 执行爬虫并保存结果
result = smart_scraper_graph.run()
with open("results.json", 'w', encoding='utf-8') as f:
      json.dump(result, f, indent=4)

这个框架,发送请求、数据提取,全都交给了大模型去处理,整体代码非常的简洁,只需要url地址和提示词(prompt)就可以了,非常的nice啊,目前还没有测试有反爬虫的网站,大家可以测试一下

在这里插入图片描述

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2066041.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

增强管道数据流转(EPDR)技术的设计局限和替代

在前文中&#xff0c;我们介绍了EPDR技术的起源&#xff0c;以及使用该技术驱动的业余软件无线电平台专栏。已有玩家通过踩坑证明&#xff0c;进程管道交换数据时间延迟大&#xff0c;构造时间敏感系统难。除非采用传统的紧耦合设计及更大的颗粒度&#xff0c;否则很难在期望的…

云计算实训34——docker环境配置、镜像基本操作、容器基本操作、设置远程连接管理

一、配置docker环境 写入模块 [rootdocker ~]# cat << EOF | tee /etc/modules-load.d/k8s.conf > overlay > br_netfilter > EOF 加载模块 #内核模块 [rootdocker ~]# modprobe overlay #桥接模块 [rootdocker ~]# modprobe br_netfilter #查看所添加的模…

物联网安装调试员:振兴杯全国青年职业技能大赛背后的人才培养

一、物联网安装调试员职业概述 1.1 职业定义 物联网安装调试员是信息时代下新兴的职业之一&#xff0c;他们利用先进的检测仪器和专用工具&#xff0c;负责物联网产品的安装、配置和调试工作。这项工作的核心是确保物联网设备能够高效、稳定地运行&#xff0c;实现数据的互联…

【精选】基于数据可视化的智慧社区内网平台

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

简单的jar包重打包Failed to get nested archive for entry 报错处理

简单的jar包重打包Failed to get nested archive for entry 报错处理 1. 需求 公司有一个后端项目&#xff0c;项目已经打好了jar包&#xff0c;现在我们发现jar包依赖的子包有问题&#xff0c;其中的一个mybatis xml文件查询数据不正确&#xff0c;我们需要替换项目&#xf…

使用Blender进行3D建模—基础操作笔记

Blender 3D 建模&#x1f680; 在博0阶段&#xff0c;目前已经完成立创EDA的PCB绘制的基础学习&#xff0c;树莓派的系统安装远程控制能学习&#xff0c;加上我本硕阶段学习的单片机和深度学习人工智能算法的知识&#xff0c;这里打算补上一块比较重要的能力拼图&#xff0c;就…

集团数字化转型方案(八)

集团数字化转型方案是一项全面而系统的工程&#xff0c;旨在通过构建基于云计算、大数据、人工智能等现代信息技术的企业级数字化平台&#xff0c;对传统的组织结构、业务流程、管理模式实现根本性革新。方案将围绕数据驱动的决策机制、智能化业务流程、数字化的客户体验、平台…

编程实现基于信息熵/基尼指数划分选择的决策树算法

编程实现基于信息熵/基尼指数划分选择的决策树算法 手动建立一个csv文件 #csv的内容为 Idx,color,root,knocks,texture,navel,touch,density,sugar_ratio,label 1,dark_green,curl_up,little_heavily,distinct,sinking,hard_smooth,0.697,0.46,1 2,black,curl_up,heavily,disti…

Linux驱动学习之点灯(五,设备树没用平台设备总线)

创建一个设备树节点 /{led:led{compatible"led";led_pin<&gpio0 22 GPIO_ACTIVE_HIGH &gpio0 21 GPIO_ACTIVE_HIGH>;status"okay";} } OF函数介绍 查找属性 of_gpio_named_count of_gpio_named_count 函数用于获取设备树某个属性里面定…

Calendar 控件 自定义重汇效果

自定义样式代码&#xff1a; <UserControl.Resources><c:MarginWithScheduleConverter x:Key"MarginWithScheduleConverter"/><Style TargetType"GroupBox" BasedOn"{StaticResource GroupBoxStyle}"/><Style x:Key"C…

Linux系统管理体系-服务管理

1、管理命令 systemctl 管理服务 开机自启动管理正在运行的服务 1&#xff09;检查sshd远程连接服务状态 systemctl status sshd systemctl status 单个或者多个服务名2&#xff09;如何设置服务开启 #运行服务 systemctl start sshd #开机自启动 systemctl enable sshd #…

【opencv】SIFT(尺度不变特征变换)算法?

关键词&#xff1a;SIFT Algorithm 文章目录 一、介绍二、什么是 SIFT 算法&#xff1f;三、人类与机器识别3.1 SIFT 在计算机视觉中的应用3.2 SIFT 关键点的优势3.3 示例演示 四、关键点定位关键点选择 五、入学指导任务5.1 计算大小和方向5.2 创建震级和方向的直方图5.3 关键…

【LLM大模型论文日更】| QAEA-DR:一个用于密集检索的统一文本增强框架

论文&#xff1a;https://arxiv.org/pdf/2407.20207代码&#xff1a;未开源机构&#xff1a;鹏城实验室领域&#xff1a;稠密检索发表&#xff1a;arXiv 研究背景 研究问题&#xff1a;这篇文章要解决的问题是密集检索&#xff08;Dense Retrieval&#xff09;中&#xff0c;将…

Windows:Node.js下载与安装教程

1、进入nodejs官网&#xff1a;https://nodejs.org/en 2、配置系统参数 3、运行cmd&#xff0c;输入 node -v 出现安装版本即安装成功

Keil C51 插件 检测所有if语句

此插件解决的问题 Keil 插件 -- Python 代码 import chardet, sys, glob, re from pathlib import Pathfrom collections import deque# 变量名字典 key--数据名 value--数据s类型 variable_dic {}# 初始化一个空的二维数组 matrix [] # 列表的头数据 header_list [] # 列表…

Tina5 Linux开发

准备开发环境 首先准备一台 Ubuntu 20.04 / Ubuntu 18.04 / Ubuntu 16.04 / Ubuntu 14.04 的虚拟机或实体机&#xff0c;其他系统没有测试过出 BUG 不管。 更新系统&#xff0c;安装基础软件包 sudo apt-get update sudo apt-get upgrade -y sudo apt-get install build-ess…

保护网站安全,了解常见的几种网络攻击

随着互联网技术的迅猛发展&#xff0c;网站作为信息展示和交互的重要平台&#xff0c;面临着日益复杂的网络攻击威胁。从简单的口令入侵到复杂的分布式拒绝服务&#xff08;DDoS&#xff09;攻击&#xff0c;网络攻击手段层出不穷&#xff0c;给网站所有者带来了巨大的挑战。今…

sqlilabs less21-25关手工注入

第21关 一.登录页面 二 .Burp Suite 抓包&#xff0c;进入重放器 三.查询数据库 先进行编码 )and updatexml(1,concat(1,database()),1)# 四.查表&#xff0c;先进行编码 )and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where…

王老师 linux c++ 通信架构 笔记(五)编译后生成的 nginx 可执行程序的启动与 nginx 选项

&#xff08;22&#xff09; 启动 nginx &#xff1a; 上网测试一下&#xff1a; 端口号 介绍&#xff1a; &#xff08;23&#xff09; 因为 nginx 监听知名端口号 80 &#xff0c;http 服务。也可以知名端口号&#xff0c;格式如下&#xff1a; 生产环境下可以设置 ngi…

扬中网站建设创建网站

扬中网站建设&#xff1a;打造企业更强大的数字名片 随着互联网的发展&#xff0c;网站已经成为企业不可或缺的一部分。对于扬中市的企业而言&#xff0c;建设一个专业的网站不仅能提升品牌形象&#xff0c;更能拓展市场&#xff0c;提高竞争力。本文将为您介绍扬中网站建设的重…