python爬虫实战(6)--获取某度热榜

news/2024/7/19 11:06:30 标签: python, 爬虫, 开发语言

1. 项目描述

需要用到的类库

pip install requests
pip install beautifulsoup4
pip install pandas
pip install openpyxl

然后,我们来编写python脚本,并引入需要的库:

import requests
from bs4 import BeautifulSoup
import pandas as pd

第一部分:网络爬虫

定义一个函数来抓取百度热榜的数据,方式同样是发出GET请求,并使用BeautifulSoup解析请求内容,最后提取热榜标题:

def get_hot_list():
    response = requests.get("https://top.baidu.com/board?tab=realtime")
    soup = BeautifulSoup(response.content, 'html.parser')
    hot_list = []
    for idx, item in enumerate(soup.find_all('div', class_='c-single-text-ellipsis')):
        if idx % 2 != 0:
            hot_list.append(item.text)
    return hot_list

以上这个函数用requests库发出GET请求,然后用BeautifulSoup解析请求内容,然后提取出所有的热榜标题。

第二部分:数据输出

编写第二个函数来生成Excel文件:

def write_to_excel(hot_list, filename='baidu_hot.xlsx'):
    df = pd.DataFrame(hot_list, columns=['热榜标题'])
    df.to_excel(filename, index=False)

在这个函数里,我们首先将数据转化为pandas的DataFrame对象,然后调用to_excel方法将其保存为Excel文件。
现在,你可以像这样运行脚本以获取百度热榜并生成Excel文件:

hot_list = get_hot_list()
write_to_excel(hot_list)

http://www.niftyadmin.cn/n/5315938.html

相关文章

使用es必须要知道的一些知识点:索引篇

文章目录 一、索引创建二、经验篇使用动态模板(Dynamic Template)优化索引动态模板(Dynamic Template) 使用动态模板时,如何防止子属性溢出批量处理器(Bulk Processor)不建议处理多个索引模板的…

事件风暴-协作探索复杂业务领域

本文是个人理解,并不一定准确,仅供参考,想吐槽也可留言 事件风暴可以用在业务分析和技术分析,如果你做的业务已经有人做过了,那肯定会有这方面的专家,请来或者模仿去做一个公司特色的产品,事件风…

Oracle regexp_substr

select regexp_substr(123|456|789, [^|], 1, 2) from dual;

JWT的初级认识

文章目录 一.什么是JWT二.JWT能够做什么1.授权2.信息交换 三.为什么我们使用JWT传统的基于session的认证流程基于JWT认证1.认证流程2.jwt优势 四.JWT的结构是什么Header的组成4.2 Header4.3 Payload4.4 Signature签名目的 五.使用JWT5.1 引入JWT依赖5.2 生成token5.3 根据令牌和…

Jetson Orin AGX 64GB更新 Jetpack6.0

Jetson Orin AGX 64GB更新 Jetpack6.0 注意: 1,如果你要向我一样为AGX更新Jetpack6.0的话,它还要求你的ubuntu版本必须是20.04 或22.04 2,安装完SDKmanager后,然后选择对应的设备,根据个人选择勾选是否安装…

开启Android学习之旅-4-Android集成FontAwesome

FontAwesome 是一个非常标准、统一风格的图标库。产品经理在原型中应用了很多图标都是FontAwesome。正常流程是 UI 需要再手工绘制或在 iconfont 或 iconpark 网站挨个找,如果在 Android 直接使用不是省了一步(注意版权问题,使用免费版&#…

基于SpringBoot的健身房管理系统的设计与实现

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SpringBoot的健身房管理系统的设计与…

phpstorm配置ftp

1 选择设置ftp 2设置自动上传