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

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)

三、成果展示

相关推荐
21439658 分钟前
golang如何使用expvar暴露运行时指标_golang expvar运行时指标暴露步骤
jvm·数据库·python
喜欢吃燃面20 分钟前
Linux 进程信号深度解析:从概念到产生机制
linux·开发语言·学习
weixin_4249993621 分钟前
如何用SQL按条件计算移动求和_结合CASE与窗口函数
jvm·数据库·python
AI玫瑰助手21 分钟前
Python基础:字符串的常用内置方法(查找替换分割)
android·开发语言·python
214396522 分钟前
持久化存储如何适配不同浏览器?解决隐私模式下存储失败的指南
jvm·数据库·python
justjinji23 分钟前
c++怎么读取大端序设备的固件bin文件_字节反转与位移操作【详解】
jvm·数据库·python
shark222222226 分钟前
Python中的简单爬虫
爬虫·python·信息可视化
m0_5150984227 分钟前
如何处理视图中的Definer_视图创建者权限变更对视图有效性的影响
jvm·数据库·python
Ailan_Anjuxi27 分钟前
Python快速学习——第11章:模块
python·编程语言
2401_8836002528 分钟前
如何创建物化视图_CREATE MATERIALIZED VIEW基本语法与数据填充
jvm·数据库·python