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

爬虫学习笔记(二)--web请求过程

Web请求全过程(重要)

从输入完网址(如输入百度网址)到返回页面以及页面中的数据这一完整的过程发生了什么事情?

服务器端渲染

在服务器端直接把数据和html整合,统一返回给浏览器,在页面源代码中能看到数据

例子:百度搜索某一明星信息

客户端渲染

数据和Html在客户端整合,第一次请求只要一个html骨架,第二次请求拿到数据,在客户端整合html和数据后进行统一页面展示,而在页面源代码中(仅有html页面)看不到数据

例子:请求豆瓣排行榜网页

浏览器抓包工具

 

打开抓包工具的方法:

右键->检查

重新回车上面的url地址,下面network就会显示这次完整的url请求的各种数据图片,找到左下角typerank这一个url请求,点击右面的header查看,发现这个请求的url地址与这个网页首页面的url地址相同,这个就是第一次的请求

第一次请求响应的页面(骨架)

点击preview提前预览这个页面,查看第一次请求返回的内容 ,发现这里面内容很简陋,像电影排行的具体电影信息等并未出现,说明第一次url请求只是返回一个框架,并没有真正想要查看的具

体的数据

下面是提前预览的与实际页面的对比,左边实际的页面有具体的电影信息如下图美丽人生(相关的放映年份、主演人员、豆瓣评分),右边的首次访问页面返回的数据中没有这些信息,右边没有任何的统计数据信息,只有分类等级的一些框架显示

真正的数据在哪里? (第二次请求-数据)

点击name为"top-list?type=248*"的字样,找到header信息,查看请求的url,发现该url与顶部请求信息的url相比多了&start=0&limit=20字样的信息,返回数据内容的类型content-type为json格式的数据

点击preview,如下图返回的是20个json序列

点击第0个序列查看具体数据,如下图所示,第0个序列的数据就是排名第一的电影的数据信息,主演、电影名、电影类型都可以一一对应上

爬虫需要爬取的

所以如果想爬虫爬到数据,就没必要把第一次请求的骨架爬取,只需要爬取第二次请求返回的json数据(正好是规整的数据)如下图所示

http://www.xdnf.cn/news/2646.html

相关文章:

  • 从代码学习机器学习 - UMAP降维算法 scikit-learn版
  • 【Linux】基于环形队列的生产消费者模型
  • 机器学习第三篇 模型评估(交叉验证)
  • 腾讯云服务器独立ip服务器优点是什么?服务器需要固定ip吗?
  • WebRtc08:WebRtc信令服务器实现
  • 简单分析自动驾驶发展现状与挑战
  • cURL 入门:10 分钟学会用命令行发 HTTP 请求
  • MySQL慢查询分析工具:EXPLAIN
  • Awesome-Embodied-AI:具身AI机器人领域最全资源汇总(含人形机器人,多足机器人,灵巧手等精选资源)
  • C++11线程间通信同步与Linux中MySQL连接池实现
  • XLSX.utils.sheet_to_json设置了blankrows:true,但无法获取到开头的空白行
  • JDBC 使用流程详解
  • rag增强检索-基于关键词检索的混合检索模式
  • vue响应式原理——vue2和vue3的响应式实现区别
  • 非结构化数据解析
  • wsl(8) -- 图形界面
  • 封装el-autocomplete,接口调用
  • Ubuntu安装brew
  • OSI 模型(开放系统互联模型)
  • FEKO许可安装
  • CCF推荐学术会议-C(网络与信息安全):SAC 2025
  • Python学习之路(六)-图像识别
  • 数字化转型的未来趋势:从工具到生态,聚焦生态合作、绿色转型与全球化布局
  • Vue3 Element Plus el-tabs数据刷新方法
  • 更快的图像局部修改与可控生成:Flex.2-preview
  • 航顺 芯片 开发记录 (一) 2025年4月27日19:23:32
  • 【博客系统】博客系统第二弹:实现博客列表接口
  • T检验、F检验及样本容量计算学习总结
  • 通过示例学习:连续 XOR
  • SpringBoot驾校报名小程序实现