当前位置: 首页 > news >正文

【数据处理】使用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收集网络数据--爬虫基础

我们经常需要获取大量的网络数据用于分析&#xff0c;靠人工获取效率太低&#xff0c;所以用代码获取成为大多数人的主要选择&#xff0c;这里简单介绍下使用python进行网络数据爬取的方法 数据获取 由于我们没有各个平台的内部数据和接口&#xff0c;要想获取数据只能从网页…...

代码随想录二叉树篇(含源码)

二叉树与递归 前言226.翻转二叉树算法思路及代码solution 1 用分解问题的思路来解决solution 2 用遍历的思路来解决 101.对称二叉树算法思路及代码solution 104.二叉树的最大深度算法思路及代码solution 1 遍历solution 2 分解问题 111.二叉树的最小深度算法思路及代码solution…...

网络安全检测思路

对于主机的安全检测&#xff0c;我们通常直接采用nmap或者类似软件进行扫描&#xff0c;然后针对主机操作系统及其 开放端口判断主机的安全程度&#xff0c;这当然是一种方法&#xff0c;但这种方法往往失之粗糙&#xff0c;我仔细考虑了一下&#xff0c;觉 得按下面的流程进行…...

ios通过xib创建控件

之前写过ios动态创建控件及添加事件&#xff0c;纯手工代码写控件&#xff0c;虽然比较灵活&#xff0c;但是就是代码量比较多。这次我们通过xib来创建app下载列表项 AppView.xib。一个imageview,一个label,一个button构成 1.创建AppView.xib 2.再创建xib对应的mode&#xff0…...

跟着李沐老师学习深度学习(八)

数值稳定性 模型初始化和激活函数 数值稳定性 神经网络的梯度 考虑如下d层的神经网络&#xff08;t代表层&#xff09; 计算损失 l 关于参数 Wt 的梯度&#xff1a; 这样的矩阵乘法带来的问题&#xff1a; &#xff08;1&#xff09;梯度爆炸 &#xff08;2&#xff09;梯度…...

元宵小花灯

吃完饭散步回来的路上&#xff0c;看到一个小朋友拿着元宵小灯&#xff0c;后面的家长也闲适的哼着歌。 想起前阵子看到说&#xff0c;大人爱看小孩玩&#xff0c;也是共享那份天真快乐吧。 我小时候每年的元宵节&#xff0c;也有自己的小灯&#xff0c;那是九几年&#xff0c…...

算法——搜索算法:原理、类型与实战应用

搜索算法&#xff1a;开启高效信息检索的钥匙 在信息爆炸的时代&#xff0c;搜索算法无疑是计算机科学领域中熠熠生辉的存在&#xff0c;它就像一把神奇的钥匙&#xff0c;为我们打开了高效信息检索的大门。无论是在日常生活中&#xff0c;还是在专业的工作场景里&#xff0c;…...

告别传统测量:三维扫描仪测量工件尺寸

在现代制造业中&#xff0c;精确测量工件尺寸是确保产品质量和生产效率的关键环节。然而&#xff0c;传统测量方法往往存在效率低下、精度不足以及操作复杂等问题&#xff0c;难以满足高精度和复杂形状工件的测量需求。 传统工件尺寸测量主要依赖于卡尺、千分尺、三坐标测量仪…...

win32汇编环境,对话框程序使用跟踪条(滑块)控件示例一

;运行效果 ;win32汇编环境,对话框程序使用跟踪条控件示例一 ;生成2条横的跟踪条,分别设置不同的数值范围,设置不同的进度副度的例子 ;直接抄进RadAsm可编译运行。重要部分加备注。 ;下面为asm文件 ;>>>>>>>>>>>>>>>>>>…...

WordPress 角标插件:20 种渐变色彩搭配,打造专属菜单标识

源码介绍 WordPress 角标插件使用教程 本插件旨在为 WordPress 菜单添加角标&#xff0c;并且支持 20 种不同的角标样式。 使用步骤 您可以在 WordPress 后台的“插件”页面中&#xff0c;找到“WordPress 角标插件”&#xff0c;然后点击激活按钮。您需要进入主题的菜单设置…...

【鸿蒙开发】第二十九章 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服务器笔记

目录 视频&#xff1a; 资源&#xff1a; Linux CeneOS7&#xff1a; VMware&#xff1a; Linux无法安装 yum install vim -y 1.手动创建目录 2.下载repo PS 补充视频不可复制的代码 安装GitLab *修改root用户密码相关&#xff08;我卡在第一步就直接放弃了这个操作&…...

3dgs 2025 学习笔记

CVPR 2024 3D方向总汇包含&#xff08;3DGS、三维重建、深度补全、深度估计、全景定位、表面重建和特征匹配等&#xff09;_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包失败&#xff0c;平常如果出现第三方库或者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是一款跨多个平台的&#xff0c;用于在应…...

mydb:TM实现

一、说明 TM就是事务管理&#xff1a;实现对于事务的新增&#xff08;active&#xff09;、事务的状态修改&#xff08;commit、abort&#xff09;、事务的状态判断 二、事务管理 2.1创建xid文件/打开xid文件 创建xid、写一个空的 XID 文件头并创建TM public static Transac…...

神经缩放定律:涌现能力与神经元数量、参数数量、数据集大小以及训练所使用的计算量有关

大语言模型的神经缩放定律 大语言模型(LLMs)在自然语言处理领域取得了显著进展,这很大程度上得益于神经缩放定律。该定律指出,模型的损失与模型规模、数据集大小以及训练所使用的计算量呈幂律关系 ,随着模型参数、数据量等的增加,模型会展现出涌现能力,性能会有质的飞跃…...

Microsoft Porject常用字段描述

点击下载《Microsoft Porject常用字段描述》 1. 前言 Microsoft Project 是项目管理中不可或缺的工具&#xff0c;它通过丰富的列&#xff08;字段&#xff09;帮助项目经理全面跟踪和管理项目的各个方面。这些列名通常以简称的形式出现&#xff0c;如 ACWP、BCWP、BCWS 等&a…...

web前端开发中vscode常用的快捷键

1.快速复制一行 快捷键&#xff1a; shiftalt 下箭头(上箭头) 或者 ctrlc 然后 ctrlv 2.选定多个相同的单词 快捷键&#xff1a; ctrl d 先双击选定一个单词&#xff0c;然后按下 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依赖关系开发包 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作&#xff0c;无需更改相机配置。但是&#xff0c;一…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地

借阿里云中企出海大会的东风&#xff0c;以**「云启出海&#xff0c;智联未来&#xff5c;打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办&#xff0c;现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下&#xff0c;知识图谱凭借其高效的信息组织能力&#xff0c;正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合&#xff0c;探讨知识图谱开发的实现细节&#xff0c;帮助读者掌握该技术栈在实际项目中的落地方法。 …...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

Rapidio门铃消息FIFO溢出机制

关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系&#xff0c;以下是深入解析&#xff1a; 门铃FIFO溢出的本质 在RapidIO系统中&#xff0c;门铃消息FIFO是硬件控制器内部的缓冲区&#xff0c;用于临时存储接收到的门铃消息&#xff08;Doorbell Message&#xff09;。…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; 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|第三篇】类的生命周期(高频面试题)

前言&#xff1a; 在Java编程中&#xff0c;类的生命周期是指类从被加载到内存中开始&#xff0c;到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期&#xff0c;让读者对此有深刻印象。 目录 ​…...

C# 表达式和运算符(求值顺序)

求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如&#xff0c;已知表达式3*52&#xff0c;依照子表达式的求值顺序&#xff0c;有两种可能的结果&#xff0c;如图9-3所示。 如果乘法先执行&#xff0c;结果是17。如果5…...