AI网络爬虫:用kimichat自动批量提取网页内容

2024-05-14 08:44

本文主要是介绍AI网络爬虫:用kimichat自动批量提取网页内容,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先,在网页中按下F12键,查看定位网页元素:

然后在kimi中输入提示词:

你是一个Python编程专家,要完成一个爬取网页内容的Python脚本,具体步骤如下:

在F盘新建一个Excel文件:提示词.xlsx

打开网页:https://lobehub.com/zh/assistants

定位class="layoutkit-flexbox css-15l7r2q acss-vjqh32"的div标签;

定位div标签里面所有的a标签,

提取a标签的href属性值,前面加上”https://lobehub.com/zh”,构造成一个URL;

解析这个URL的源代码;

在源代码中定位class="acss-1ce01rv"的h1标签,提取其文本内容作为提示词标题,写入”提示词.xlsx”这个Excel文件的第1列,列的标头为:提示词标题;

在源代码中定位class="layoutkit-flexbox css-o3n4io acss-pl6lf1"的h2标签,提取其文本内容作为提示词简介,写入”提示词.xlsx”这个Excel文件的第2列,列的标头为:提示词简介;

在源代码中定位class="acss-7ksih7"的div标签,提取其全部文本内容作为提示词内容,写入”提示词.xlsx”这个Excel文件的第3列,列的标头为:提示词内容;

注意:

每一步都要输出相关信息到屏幕;

网站有放爬虫机制,要通过设置请求头、延迟请求等方式来进行应对

源代码:

import requests

from bs4 import BeautifulSoup

import pandas as pd

from openpyxl import Workbook

# 定义目标URL

url = "https://lobehub.com/zh/assistants"

# 设置请求头,模拟浏览器访问

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'

}

# 发送请求并获取网页内容

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

response.raise_for_status() # 如果请求失败,将抛出异常

# 解析网页内容

soup = BeautifulSoup(response.text, 'html.parser')

# 定位div标签并提取所有a标签的href属性

div_tag = soup.find('div', class_='layoutkit-flexbox css-15l7r2q acss-vjqh32')

a_tags = div_tag.find_all('a')

# 构造完整的URL

urls = ["https://lobehub.com/zh" + tag.get('href') for tag in a_tags]

# 定义Excel文件路径

excel_path = 'F:/提示词.xlsx'

# 创建工作簿和工作表

wb = Workbook()

ws = wb.active

# 设置列的标头

ws.append(['提示词标题', '提示词简介', '提示词内容'])

# 循环处理每个URL

for idx, url in enumerate(urls, start=1):

print(f"正在处理URL: {url}")

# 发送请求并获取网页内容

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

response.raise_for_status()

# 解析网页内容

soup = BeautifulSoup(response.text, 'html.parser')

# 提取h1标签文本内容

h1_tag = soup.find('h1', class_='acss-1ce01rv')

title = h1_tag.get_text(strip=True) if h1_tag else '无标题'

# 提取h2标签文本内容

h2_tag = soup.find('h2', class_='layoutkit-flexbox css-o3n4io acss-pl6lf1')

introduction = h2_tag.get_text(strip=True) if h2_tag else '无简介'

# 提取div标签文本内容

div_tag = soup.find('div', class_='acss-7ksih7')

content = div_tag.get_text(strip=True) if div_tag else '无内容'

# 将提取的内容写入Excel文件

ws.append([title, introduction, content])

# 打印到屏幕

print(f"标题: {title}")

print(f"简介: {introduction}")

print(f"内容: {content}")

# 保存Excel文件

wb.save(excel_path)

print(f"数据已写入Excel文件: {excel_path}")

这篇关于AI网络爬虫:用kimichat自动批量提取网页内容的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/988293

相关文章

Python实现微信自动锁定工具

《Python实现微信自动锁定工具》在数字化办公时代,微信已成为职场沟通的重要工具,但临时离开时忘记锁屏可能导致敏感信息泄露,下面我们就来看看如何使用Python打造一个微信自动锁定工具吧... 目录引言:当微信隐私遇到自动化守护效果展示核心功能全景图技术亮点深度解析1. 无操作检测引擎2. 微信路径智能获

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

SpringBoot整合mybatisPlus实现批量插入并获取ID详解

《SpringBoot整合mybatisPlus实现批量插入并获取ID详解》这篇文章主要为大家详细介绍了SpringBoot如何整合mybatisPlus实现批量插入并获取ID,文中的示例代码讲解详细... 目录【1】saveBATch(一万条数据总耗时:2478ms)【2】集合方式foreach(一万条数

使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)

《使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)》PPT是一种高效的信息展示工具,广泛应用于教育、商务和设计等多个领域,PPT文档中常常包含丰富的图片内容,这些图片不仅提升了... 目录一、引言二、环境与工具三、python 提取PPT背景图片3.1 提取幻灯片背景图片3.2 提取

Python实现word文档内容智能提取以及合成

《Python实现word文档内容智能提取以及合成》这篇文章主要为大家详细介绍了如何使用Python实现从10个左右的docx文档中抽取内容,再调整语言风格后生成新的文档,感兴趣的小伙伴可以了解一下... 目录核心思路技术路径实现步骤阶段一:准备工作阶段二:内容提取 (python 脚本)阶段三:语言风格调

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

一文详解如何在Python中从字符串中提取部分内容

《一文详解如何在Python中从字符串中提取部分内容》:本文主要介绍如何在Python中从字符串中提取部分内容的相关资料,包括使用正则表达式、Pyparsing库、AST(抽象语法树)、字符串操作... 目录前言解决方案方法一:使用正则表达式方法二:使用 Pyparsing方法三:使用 AST方法四:使用字

pytorch自动求梯度autograd的实现

《pytorch自动求梯度autograd的实现》autograd是一个自动微分引擎,它可以自动计算张量的梯度,本文主要介绍了pytorch自动求梯度autograd的实现,具有一定的参考价值,感兴趣... autograd是pytorch构建神经网络的核心。在 PyTorch 中,结合以下代码例子,当你

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.