AIGC+Python——AI赋能网页爬虫

引言

在当今数字化的时代,数据就像一座宝藏,而网页爬虫就是我们从海量数据中发掘宝藏的工具之一。而结合人工智能生成技术(AIGC)和Python语言,可以更快速地实现网页爬虫,让我们一起来探索这个神奇的组合吧!

流程

1. 安装引入相关库

首先,我们需要安装Python中用于网页爬虫的相关库,比如requests、BeautifulSoup等。这些库可以帮助我们发送HTTP请求,并解析HTML结构。

python 复制代码
# python http请求库
!pip install requests

# python dom 查找
# 不用写正则表达式
!pip install beautifulsoup4

# 通义千问大模型
!pip install dashscope
python 复制代码
import requests # node require
from bs4 import BeautifulSoup
import dashscope

2. 发送HTTP请求,得到HTML结构

接下来,我们可以通过发送HTTP请求来获取网页的HTML内容。

python 复制代码
def fetch_movie_list(url):
  # 设置HTTP 请求头
  headers = {
      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0'
  }

  response = requests.get(url, headers=headers)

  # HTTP状态码 成功
  if response.status_code == 200:
    # 解析器 对html继续解析
    soup = BeautifulSoup(response.text, 'html.parser') # 内存中的dom对象
    movie_list = []
    movies = soup.select('#wrapper #content .article .item')
    # python 不是完全面向对象的,而更年轻的js 是完全面向对象
    # print(len(movies))
    # 确保一定是 字符串
    all_movies_text = ''.join([movie.prettify() for movie in movies[:2]])
    # print(all_movies_text)
    return all_movies_text
  else:
    print('Failed to retrieve content')


url = 'http://movie.douban.com/chart'

# 函数调用
movies = fetch_movie_list(url)
print(movies)

HTTP 请求头中的User-Agent 可以通过在浏览器中打印navigator.userAgent得到

3. 设置Prompt(预设提示)

在使用AIGC之前,我们需要设置Prompt,以便AIGC可以生成我们需要的内容。

python 复制代码
# AIGC LLM + Prompt(指令)
prompt = f"""
{movies}
这是一段电影列表html,请获取电影名(name),封面链接(picture),简介(info),评分(score),评论人数(conmmentsNumber)
,请使用括号里的单词作为属性名,并以JSON数组的格式返回
"""
print(prompt)

4. 调用通义千问API

现在,我们可以调用AIGC的API,并传入HTML内容和设置好的Prompt,让AIGC帮助我们生成网页爬虫所需的代码。

API_KEY 可以在模型服务灵积 DashScope - 阿里云 (aliyun.com)中点击立即开通后点击控制台的API_KEY管理获得

python 复制代码
# 更改为自己的API_KEY
dashscope.api_key = API_KEY

def call_qwen_with_prompt():
  message = [
      {
          'role':'user',
          'content':prompt
      }
  ]
  response = dashscope.Generation.call(
      dashscope.Generation.Models.qwen_turbo,
      messages = message,
      result_messages = 'messages'
  )
  print(response)
call_qwen_with_prompt()

结语

最终,通过以上步骤,我们可以快速实现一个网页爬虫,从网页中提取我们需要的信息。让编程变得更简单,让AIGC和Python助力你的工作吧!如果你觉得这篇文章有帮助或有所启发,别忘了给我一个鼓励的赞!

相关推荐
可乐ea8 小时前
AI Agent 工具调用准确性评测:选择错误与参数错误分开测
大数据·人工智能·算法·大模型·工具调用·ai智能体·agent评测
昨日之日20068 小时前
yovoice:本地配音工具箱,支持音色克隆与情绪控制,专为旁白、有声书和视频配音打造
人工智能·音视频
DP DPharness8 小时前
选型时怎么比:dsh-knowledge 与三类 RAG 方案的维度对照
人工智能·dpharness
数智顾问8 小时前
(90页PPT)IBM集团管理驾驶舱项目蓝图规划(附下载方式)
大数据·人工智能·物联网
二川bro8 小时前
Windows下Claude Code从安装到落地完整踩坑记录
人工智能
ZzT8 小时前
Claude Code Mods 是什么:给 Claude 加工具、在终端画界面
人工智能·ai编程·claude
I'mChloe8 小时前
Windows部署BiliNote:Docker安装、AI视频转写、Markdown笔记与cpolar远程访问
人工智能·windows·docker
喜欢打篮球的普通人8 小时前
MiniMind 学习笔记(十二):Pretrain 实操——从版本梳理到 8GB 显卡上的真实训练
人工智能·笔记·学习
YOLO数据集集合8 小时前
无人机视角行人与车辆检测数据集 | 无人机航拍 行人检测 车辆检测 智慧城市 公共安全9140期
人工智能·目标检测·无人机·智慧城市·车辆识别·无人机视角
老歌老听老掉牙8 小时前
斜抛运动问题分析:给定最大高度与墙面位置的轨迹与时间求解
python·斜抛运动