python获取度娘热搜数据并保存成Excel

news2024/12/27 16:28:28

python获取百度热搜数据

  • 一、获取目标、准备工作
  • 二、开始编码
  • 三、总结

一、获取目标、准备工作

1、获取目标: 本次获取教程目标:某度热搜

2、准备工作

  • 环境python3.x
  • requests
  • pandas

       requests跟pandas为本次教程所需的库,requests用于模拟http请求,pandas用于数据处理(将结果保存为Excel)。

  • 在Chrome浏览器中打开需要请求的页面,然后F12打开浏览器的控制台。点击Network选择网络,然后再点击XHR。找到相应的XHR请求,就能获取到热搜数据接口了。

二、开始编码

  1. 导入所依赖的库
import requests
import pandas as pd
  1. 构造一个请求头:
browse_header = {
    "Accept": "application/json, text/plain, */*",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36",
    "Host": "top.baidu.com",
    "Referer": "https://top.baidu.com/board",
}
  1. 定义一个请求接口,即数据地址
url = "https://top.baidu.com/api/board?platform=wise&tab=realtime"
  1. 发送请求,由于接口返回的是JSON格式,所以这里一步到位,将响应结果也转成JSON格式。
json = requests.get(url, headers=browse_header).json()
  1. 注意:某度热搜有两种热搜,一个置顶热搜、一个普通热搜,所以我们得分开获取。
# 爬取置顶热搜
top_content_list = json['data']['cards'][0]['topContent']
# 爬取普通热搜
content_list = json['data']['cards'][0]['content']
  1. 然后再分别进行json解析,对应的字段(标题、排名、热搜指数、描述、链接地址)。
df = pd.DataFrame(  # 拼装爬取到的数据为DataFrame
	{
		'热搜标题': title_list,
		'热搜排名': order_list,
		'热搜指数': score_list,
		'描述': desc_list,
		'链接地址': url_list
	}
)
df.to_excel('百度热搜榜.xlsx', index=False)  # 保存结果数据

完成代码:

import requests
import pandas as pd

browse_header = {
    "Accept": "application/json, text/plain, */*",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36",
    "Host": "top.baidu.com",
    "Referer": "https://top.baidu.com/board",
}
url = "https://top.baidu.com/api/board?platform=wise&tab=realtime"
json = requests.get(url, headers=browse_header).json()

# 爬取置顶热搜
top_content_list = json['data']['cards'][0]['topContent']
print(top_content_list)
# 爬取普通热搜
content_list = json['data']['cards'][0]['content']
print(content_list)
title_list = []
order_list = []
score_list = []
desc_list = []
url_list = []
for top_item in top_content_list:
    title_list.append(top_item.get('word'))
    order_list.append("置顶")
    score_list.append(top_item.get("hotScore"))
    desc_list.append(top_item.get("desc"))
    url_list.append(top_item.get("url"))
index = 0
for content in content_list:
    index += 1
    title_list.append(content.get('word'))
    order_list.append(index)
    score_list.append(content.get("hotScore"))
    desc_list.append(content.get("desc"))
    url_list.append(content.get("url"))
df = pd.DataFrame({
    '热搜标题': title_list,
    '热搜排名': order_list,
    '热搜指数': score_list,
    '描述': desc_list,
    '链接地址': url_list
})
df.to_excel('百度热搜榜.xlsx', index=False)  # 保存结果数据

最后,查看一下获取到的数据:
在这里插入图片描述
一共31条数据(1条置顶热搜+30条普通热搜)。

三、总结

以上就是整个获取的数据,如果你们有其他数据需要用python获取的,欢迎在评论区留言。最后给你们推荐一个前端实用工具:JS加密工具

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/653871.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在读博士怎么申请公派访学?

作为在读博士生,申请公派访学是一项重要而有益的经历。下面知识人网将为您介绍一些关于如何申请公派访学的步骤和注意事项。 首先,您需要找到一个合适的公派访学机会。可以通过与导师、教授或其他相关人士进行交流来获取相关信息。还可以参考学术会议、研…

【Linux】linux | 服务响应慢、问题排查 | 带宽问题导致

一、说明 1、项目使用云服务器,服务器配置:5M带宽、4核、32G,1T,CentOS7 2、CPU、内存、磁盘IO都没有达到瓶颈,猜测是带宽问题 3、应用比较多,应用中间件,十几个差不多 4、同时在线人数30 5、已…

继承~~~

1:继承概述,使用继承的好处 1:什么是继承? Java中提供一个关键字extends,用这个关键字,我们可以让一个类和另一类建立起父子关系。 public class Student extends People{} Student称为子类&#xff08…

乘势而起:机载航电·显控显示系统仿真

改革开放以来,我国国民经济与科学技术取得了长足的发展,信息化、工业成熟度与自动化程度不断深化,极大地增强了国家的综合实力、在世界范围内显示了大国地位。在当前科技产业的发展和变革的历史性交汇期,“工业4.0”、“中国制造2…

iOS App 上架流程图文教学

在上架App 之前必须先准备好开发者帐号,但申请开发者帐号因法兰克早在之前已经申请好了,故就跳过此步骤,直接从产生凭证到上传App开始讲起。首先,要将自己辛苦写好的App 送审的话,则要依序做完下列几件事情即可。 在开…

NFT Insider #98:The Sandbox与Forkast Labs 达成合作,苹果的混合现实头显将增强游戏和元宇宙

引言:NFT Insider由NFT收藏组织WHALE Members(https://twitter.com/WHALEMembers)、BeepCrypto(https://twitter.com/beep_crypto)联合出品,浓缩每周NFT新闻,为大家带来关于NFT最全面、最新鲜、最有价值的讯息。每期周…

对称加密DES加密算法原理、用户登录应用案例分享

更多知识 学习:https://www.processon.com/view/60504b5ff346fb348a93b4fa#map 目录: DES算法的工作原理DES算法的优点DES算法的缺点DES算法的应用场景DES算法性能分析用户登录实例总结 1. DES算法的工作原理 DES算法是一种对称加密算法,使…

定向写作模型CTRL,Conditional Transformer Language有条件的文本生成模型

定向写作模型CTRL 介绍 CTRL全称为Conditional Transformer Language有条件的文本生成模型,它始于Salesforce在2019年发布的论文《A Conditional Transformer Language Model for Controllable Generation》,该模型用于定向写作。论文地址如下&#xff…

双功能螯合剂:1777804-45-1,DOTA-(COOt-Bu)3-CH2-Ph-azide,的反应特点及其参数说明

​ 中文名称:1,1-二甲基乙基4-[(4-叠氮苯基)甲基] -7,10-双[2-(1,1-二甲基乙氧基) -2-氧乙基] -1,4,7,10-四氮杂环十二烷 -1-乙酸酯 英文名称:DOTA-(COOt-Bu)3-CH2-Ph-azide,DOTA-(COOt-Bu)3-CH2-Ph-N3 规格标准:1g、5g、10g CAS…

【电源设计】18650电池电源串并联设计——改变电压或容量

有时我们有需要改造电池电源的需要,比如增大容量,增大电压之类的,本文介绍18650锂电池,以及如何用18650锂电池串并联设计电源,达到增大容量或者增大电压的效果: 目录 一、18650锂电池基本知识&#xff1a…

腾讯的基础认证适合没经验、没专业知识的人吗?

IT行业可以说是现在最热门的行业之一了,很多人都会选择报考这个专业,同时还有很多没有基础的人,也会选择在毕业后继续教育,从而获得进入这一行的机会,可以说每个人都在内卷,技术和证书都需要拥有&#xff0…

这就是实力!京东资深架构师用实例详解Java虚拟机(源码剖析)

前言 Java是一门流行多年的高级编程语言,与其相关的就业岗位很多,但是最近几年却出现了用人单位招不到合适的人,而大量Java程序员找不到工作的尴尬局面。究其根本原因是岗位对Java开发技术的要求高,不但要会应用,而且…

祛除红眼算法python实现

最近研究了一下祛除红眼的算法,主要的思想都是将RGB通道里面的R通道给想法设法的降低,其他的通道稍微进行变换就行,这里使用python运行了一下例子看看, version2参考了代码:https://www.cnblogs.com/cpuimage/p/90002…

华为IP-san实验搭建

文章目录 RedHat or CentOS系统1、获得多路径软件2、配置主机iscsi名3、配置存储映射4、主机访问存储的LUN5、安装多路径解决重复磁盘问题6、使用多路径扫盘 windows系统1、为win虚拟机提供多路径包文件2、创建存储与主机的连接3、主机使用磁盘 RedHat or CentOS系统 1、获得多…

为什么 kubernetes 环境要求开启 bridge-nf-call-iptables ?

文章目录 背景基于网桥的容器网络Service 同节点通信问题开启 bridge-nf-call-iptables我的环境netshoot 工具 参考 背景 Kubernetes 环境中,很多时候都要求节点内核参数开启 bridge-nf-call-iptables: sysctl -w net.bridge.bridge-nf-call-iptables1 参考官方文…

SQL语句的一些高级用法1

这里写目录标题 SQL语句的一些高级用法11.修改表名和表结构1.修改表名 2.扩展表结构(增加字段)3.修改字段(列)名,添加唯一键4.删除字段 案例扩展数据表高级操作1.克隆表,将数据表的数…

【Spring Boot学习】Spring Boot的创建和使用

前言: 💞💞今天我们开始学习Spring Boot,这里我们会学习到怎么去创建和使用Spring Boot,在这里我们会了解到什么是最为核心的框架之一。 💞💞前路漫漫,希望大家坚持下去,…

大模型 Transformer介绍-Part1

众所周知,transformer 架构是自然语言处理 (NLP) 领域的一项突破。它克服了 seq-to-seq 模型(如 RNN 等)无法捕获文本中的长期依赖性的局限性。事实证明,transformer 架构是 BERT、GPT 和 T5 及其变体等革命性架构的基石。正如许多…

SpringBoot仿GPT数据流传输

目录 Java数据流传输响应前提Springboot文字流响应Web端接收流数据并显示 SpingBoot集成ChatGPT使用流响应结果 Java数据流传输响应 前提 在折腾ChatGpt集成在SpringBoot项目时,发现了ChatGpt api返回数据时有两种返回方式,一种是使用流传输&#xff0…

MyCat总结

目录 什么是mycat 核心概念 逻辑库 逻辑表 分片节点 数据库主机 用户 mycat原理 目录结构 配置文件 读写分离 搭建读写分离 搭建主从复制: 搭建读写分离: 分片技术 垂直拆分 实现分库: 水平拆分 实现分库: ER表 全局表 分…