【数据处理】使用python收集网络数据--爬虫基础
我们经常需要获取大量的网络数据用于分析,靠人工获取效率太低,所以用代码获取成为大多数人的主要选择,这里简单介绍下使用python进行网络数据爬取的方法
数据获取
由于我们没有各个平台的内部数据和接口,要想获取数据只能从网页端或app端进行查询,其实我们人眼看网页,是网页在调用接口,使用爬虫时,是代码在获取前端接口,本质都是一样的;不同的地方在于,人使用网页查看时,查阅速度较慢,对服务器不会产生较大的影响,而代码爬虫时,获取接口速度较快,容易对服务器产生压力。所以我们在使用爬虫时,注意避免使用多线程和循环爬取数据。
这里我们以获取百度热搜为例:

打开百度首页即可看到热搜,我们F12打开控制台,并刷新页面,让其重新加载,可以看到这里加载了不少接口和资源文件

我们可以查看下各个接口和资源文件,可以发现热搜这些都直接放在网页中返回给我们了,即在这个接口中

一般数据要么在网页中一起返回,要么有单独的接口返回,这个要看具体情况。这边就是放在网页中一起返回了。
我们直接模仿浏览器调用接口
import requests
header = {'Host': 'www.baidu.com','user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36'
}
res = requests.request(method='GET',url='https://www.baidu.com/', headers=header)
各个网站其实都会有一些反爬的手段,有的是校验客户端,有的是校验跳转路径,有的有人机验证等等(这个我们后面再拓展),这里header里的两行即是为了反爬虫准备的,校验host和user-agent是比较基础的手段,大多数网站都会有,这里我们加一下调用。
数据解析

这里可以看到返回了个<Response [200]>,这是因为返回结果是整个request的response,其中报告了状态码,header,body等等,这里我们用.text即可获取网页body的text

这里看到网页可以正常打印出来了,而且是文本信息,可以正常处理了。

我们可以看到热搜都是在这个hotsearch下,这时我们使用最基础的字符串处理的方式即可获取各个热搜的细节。

我这边没有用类似于BeautifulSoup的插件来处理网页内容,因为一般情况下,直接处理字符串就可以了。这里可以看到把各个热搜的细节都打印出来了,包括名称、排名、url等等。
以上就是使用python爬取数据的最简单的方法。
声明:本文只供大家交流学习,不能恶意使用爬虫爬取其他网站的信息,尤其注意避免多线程和循环爬取!

相关文章:
【数据处理】使用python收集网络数据--爬虫基础
我们经常需要获取大量的网络数据用于分析,靠人工获取效率太低,所以用代码获取成为大多数人的主要选择,这里简单介绍下使用python进行网络数据爬取的方法 数据获取 由于我们没有各个平台的内部数据和接口,要想获取数据只能从网页…...
代码随想录二叉树篇(含源码)
二叉树与递归 前言226.翻转二叉树算法思路及代码solution 1 用分解问题的思路来解决solution 2 用遍历的思路来解决 101.对称二叉树算法思路及代码solution 104.二叉树的最大深度算法思路及代码solution 1 遍历solution 2 分解问题 111.二叉树的最小深度算法思路及代码solution…...
网络安全检测思路
对于主机的安全检测,我们通常直接采用nmap或者类似软件进行扫描,然后针对主机操作系统及其 开放端口判断主机的安全程度,这当然是一种方法,但这种方法往往失之粗糙,我仔细考虑了一下,觉 得按下面的流程进行…...
ios通过xib创建控件
之前写过ios动态创建控件及添加事件,纯手工代码写控件,虽然比较灵活,但是就是代码量比较多。这次我们通过xib来创建app下载列表项 AppView.xib。一个imageview,一个label,一个button构成 1.创建AppView.xib 2.再创建xib对应的mode࿰…...
跟着李沐老师学习深度学习(八)
数值稳定性 模型初始化和激活函数 数值稳定性 神经网络的梯度 考虑如下d层的神经网络(t代表层) 计算损失 l 关于参数 Wt 的梯度: 这样的矩阵乘法带来的问题: (1)梯度爆炸 (2)梯度…...
元宵小花灯
吃完饭散步回来的路上,看到一个小朋友拿着元宵小灯,后面的家长也闲适的哼着歌。 想起前阵子看到说,大人爱看小孩玩,也是共享那份天真快乐吧。 我小时候每年的元宵节,也有自己的小灯,那是九几年,…...
算法——搜索算法:原理、类型与实战应用
搜索算法:开启高效信息检索的钥匙 在信息爆炸的时代,搜索算法无疑是计算机科学领域中熠熠生辉的存在,它就像一把神奇的钥匙,为我们打开了高效信息检索的大门。无论是在日常生活中,还是在专业的工作场景里,…...
告别传统测量:三维扫描仪测量工件尺寸
在现代制造业中,精确测量工件尺寸是确保产品质量和生产效率的关键环节。然而,传统测量方法往往存在效率低下、精度不足以及操作复杂等问题,难以满足高精度和复杂形状工件的测量需求。 传统工件尺寸测量主要依赖于卡尺、千分尺、三坐标测量仪…...
win32汇编环境,对话框程序使用跟踪条(滑块)控件示例一
;运行效果 ;win32汇编环境,对话框程序使用跟踪条控件示例一 ;生成2条横的跟踪条,分别设置不同的数值范围,设置不同的进度副度的例子 ;直接抄进RadAsm可编译运行。重要部分加备注。 ;下面为asm文件 ;>>>>>>>>>>>>>>>>>>…...
WordPress 角标插件:20 种渐变色彩搭配,打造专属菜单标识
源码介绍 WordPress 角标插件使用教程 本插件旨在为 WordPress 菜单添加角标,并且支持 20 种不同的角标样式。 使用步骤 您可以在 WordPress 后台的“插件”页面中,找到“WordPress 角标插件”,然后点击激活按钮。您需要进入主题的菜单设置…...
【鸿蒙开发】第二十九章 Stage模型-应用上下文Context、进程、线程
目录 1 Stage模型基本概念 1.1 开发流程 3 应用上下文Context的典型使用场景 3.1 获取应用文件路径 3.2 获取和修改加密分区 3.3 获取本应用中其他Module的Context 3.4 订阅进程内UIAbility生命周期变化 4 进程 4.1 概述 5 线程 5.1 线程类型 5.2 使用EventHub进行线…...
window 安装GitLab服务器笔记
目录 视频: 资源: Linux CeneOS7: VMware: Linux无法安装 yum install vim -y 1.手动创建目录 2.下载repo PS 补充视频不可复制的代码 安装GitLab *修改root用户密码相关(我卡在第一步就直接放弃了这个操作&…...
3dgs 2025 学习笔记
CVPR 2024 3D方向总汇包含(3DGS、三维重建、深度补全、深度估计、全景定位、表面重建和特征匹配等)_cvpr2024-structure-awaresparse-viewx-ray3dreconstr-CSDN博客 https://github.com/apple/ml-hugs 3DGS COLMAP-Free 3D Gaussian Splatting ⭐code &…...
2024.1.2版本Android Studio gradle下载超时问题处理
一、问题背景 在项目的根build.gradle里面配置了以下地址后,依旧下载gradle包失败,平常如果出现第三方库或者gradle下载失败,配置以下地址,一般可以下载成功 maven { url https://maven.aliyun.com/repository/public } maven { url https://maven.aliyun.com/nex…...
ffmpeg学习:ubuntu下编译Android版ffmpeg-kit
文章目录 前言一. 配置环境1.1 虚拟机版本1.2 安装Android环境1.2.1 Android SDK安装1.2.2 Android NDK安装 1.3 编译前的准备工作1.3.1 libtasn1-1安装1.3.2 meson安装1.3.3 harfbuzz下载 二. 编译ffmpeg-kit三. 总结 前言 ffmpeg-kit是一款跨多个平台的,用于在应…...
mydb:TM实现
一、说明 TM就是事务管理:实现对于事务的新增(active)、事务的状态修改(commit、abort)、事务的状态判断 二、事务管理 2.1创建xid文件/打开xid文件 创建xid、写一个空的 XID 文件头并创建TM public static Transac…...
神经缩放定律:涌现能力与神经元数量、参数数量、数据集大小以及训练所使用的计算量有关
大语言模型的神经缩放定律 大语言模型(LLMs)在自然语言处理领域取得了显著进展,这很大程度上得益于神经缩放定律。该定律指出,模型的损失与模型规模、数据集大小以及训练所使用的计算量呈幂律关系 ,随着模型参数、数据量等的增加,模型会展现出涌现能力,性能会有质的飞跃…...
Microsoft Porject常用字段描述
点击下载《Microsoft Porject常用字段描述》 1. 前言 Microsoft Project 是项目管理中不可或缺的工具,它通过丰富的列(字段)帮助项目经理全面跟踪和管理项目的各个方面。这些列名通常以简称的形式出现,如 ACWP、BCWP、BCWS 等&a…...
web前端开发中vscode常用的快捷键
1.快速复制一行 快捷键: shiftalt 下箭头(上箭头) 或者 ctrlc 然后 ctrlv 2.选定多个相同的单词 快捷键: ctrl d 先双击选定一个单词,然后按下 ctrl d 可以往下依次选择相同的单词。 这样同时修改相同的单词 3.全局替换某单词 当我们一个…...
鲲鹏(ARM64)升级GCC
1、下载压缩包 wget http://ftp.gnu.org/gnu/gcc/gcc-9.5.0/gcc-9.5.0.tar.xz2、解压 tar -xvf gcc-9.5.0.tar.xzcd gcc-9.5.03、下载关联软件 ./contrib/download_prerequisites4、新建文件夹 mkdir build && cd build5、配置 ../configure -enable-checkingrelea…...
树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
C# 表达式和运算符(求值顺序)
求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如,已知表达式3*52,依照子表达式的求值顺序,有两种可能的结果,如图9-3所示。 如果乘法先执行,结果是17。如果5…...
