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

相关文章

Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单

《Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单》:本文主要介绍Springboot的ThreadPoolTaskScheduler线... 目录ThreadPoolTaskScheduler线程池实现15分钟不操作自动取消订单概要1,创建订单后

python实现自动登录12306自动抢票功能

《python实现自动登录12306自动抢票功能》随着互联网技术的发展,越来越多的人选择通过网络平台购票,特别是在中国,12306作为官方火车票预订平台,承担了巨大的访问量,对于热门线路或者节假日出行... 目录一、遇到的问题?二、改进三、进阶–展望总结一、遇到的问题?1.url-正确的表头:就是首先ur

Spring使用@Retryable实现自动重试机制

《Spring使用@Retryable实现自动重试机制》在微服务架构中,服务之间的调用可能会因为一些暂时性的错误而失败,例如网络波动、数据库连接超时或第三方服务不可用等,在本文中,我们将介绍如何在Sp... 目录引言1. 什么是 @Retryable?2. 如何在 Spring 中使用 @Retryable

使用Python制作一个PDF批量加密工具

《使用Python制作一个PDF批量加密工具》PDF批量加密‌是一种保护PDF文件安全性的方法,通过为多个PDF文件设置相同的密码,防止未经授权的用户访问这些文件,下面我们来看看如何使用Python制... 目录1.简介2.运行效果3.相关源码1.简介一个python写的PDF批量加密工具。PDF批量加密

使用 Python 和 LabelMe 实现图片验证码的自动标注功能

《使用Python和LabelMe实现图片验证码的自动标注功能》文章介绍了如何使用Python和LabelMe自动标注图片验证码,主要步骤包括图像预处理、OCR识别和生成标注文件,通过结合Pa... 目录使用 python 和 LabelMe 实现图片验证码的自动标注环境准备必备工具安装依赖实现自动标注核心

QT实现TCP客户端自动连接

《QT实现TCP客户端自动连接》这篇文章主要为大家详细介绍了QT中一个TCP客户端自动连接的测试模型,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录版本 1:没有取消按钮 测试效果测试代码版本 2:有取消按钮测试效果测试代码版本 1:没有取消按钮 测试效果缺陷:无法手动停

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript

Python按条件批量删除TXT文件行工具

《Python按条件批量删除TXT文件行工具》这篇文章主要为大家详细介绍了Python如何实现按条件批量删除TXT文件中行的工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.简介2.运行效果3.相关源码1.简介一个由python编写android的可根据TXT文件按条件批

Java实现批量化操作Excel文件的示例代码

《Java实现批量化操作Excel文件的示例代码》在操作Excel的场景中,通常会有一些针对Excel的批量操作,这篇文章主要为大家详细介绍了如何使用GcExcel实现批量化操作Excel,感兴趣的可... 目录前言 | 问题背景什么是GcExcel场景1 批量导入Excel文件,并读取特定区域的数据场景2

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用