查看原文
其他

Python爬虫教程:02分享采集网页数据的详细步骤

作者一小红牛 我的Python教程 2024-01-14


Python,速成心法

敲代码,查资料,问度娘

练习,探索,总结,优化

#Python爬虫项目实现的详细步骤:123456#

1.确定采集的目标网址URL=选择一个具有实际需求和意义的网站,比如电商网站、新闻网站、社交媒体等。

2.分析网站结构(是静态网页还是动态网页?)静态网页和动态网页是网站建设中两种不同的网页类型。静态网页是使用纯HTML格式编写的网页,而动态网页则是使用HTML、CSS、JavaScript等技术编写的网页。两者主要区别在于网页内容的生成方式。

静态网页的内容相对稳定,不会随着时间、环境或数据库操作的结果而发生改变。静态网页的优点包括易于搜索引擎优化 (SEO)速度快、稳定以及安全等。缺点则是缺乏交互性和动态效果,且需要手动更新内容。

动态网页则相反,其内容是随着时间、环境或数据库操作的结果而发生改变。动态网页可以根据用户的需求交互动态地生成网页内容,实现更丰富的功能和效果,如用户注册、登录、搜索查询等。缺点则是需要更多的技术栈和服务器资源,且不利于搜索引擎优化 (SEO)。


3.模拟浏览器发送请求:
(通过requests模块发送请求,找到并获取网页上我们需要的数据)是HTML、XML、JSON、还二进制数据或文本

4.解析数据:使用抓包工具(浏览器中有内置的开发者工具DevTools,按f12即可调用去分析网页数据的结构与规律,然后使用对应的数据解析方式(正则表达式css选择器xpath节点提取等等),去提取想要的数据 。另外可以增加异常处理,使用多线程或异步请求提高效率。

#抓包工具主要有以下几种:

  1. Fiddler:Fiddler是一款位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一。它能够记录客户端和服务器之间的所有HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据。

  2. Wireshark:Wireshark是一款网络协议分析器,可以抓取网络传输中的数据包,并进行分析。它能够实时监测和分析网络通信,可用于软件的调试以及获取一些敏感信息。

  3. mitmproxy:mitmproxy是一款免费的、开源的交互式HTTPS代理工具,可以用于拦截、修改、保存http/https请求。它支持Python自定义脚本,可以用于定制化需求。

  4. tcpdump/libpcap:tcpdump/libpcap是一款开源的网络分析工具,可以捕获网络数据包并进行分析。它能够实时监测和分析网络通信,但使用起来相对复杂,需要了解一些网络知识和编程技巧。

  5. Charles:Charles是一款常用的http抓包工具,它能够记录客户端和服务器之间的所有HTTP请求和响应,并支持对http请求和响应进行修改、重发等操作。


5.核对采集的数据是否正确?以及保存数据(将数据存储到本地文件或者数据库中)

6.定期检查网页,看是否需要更新优化代码?,以保证数据的准确性和完整性,有的时候网页的数据页面会发生变化的,以及api变化了等等。


完毕!!感谢您的收看

------------往期更多精彩内容------------

Python最新版本的安装教程(附详细图)

Pycharm的下载与安装方法(附教程图)

Pycharm初始化,新建一个python程序

Pycharm英文页界面,2种汉化的设置方法(教程附图)

Python常用的英文单词集合

Python基础教程:01代码的规范书写

Python基础教程:02内置函数的用法解析

Python基础教程:03运算符与表达式

Python基础教程:04流程控制语句

Python基础教程:05字符串String的用法解析

Python基础教程:06列表,元组,字典的用法

Python入门教程:07文件及目录操作

Python入门教程:08变量,保留字,字符串索引

Python入门教程:09常用的模块库

Python入门教程10:datetime的用法

Python入门教程:11推导式的写法

Python入门教程12:pip命令的使用

Python入门教程13:json的用法

Python入门教程14:高阶函数用法解析

Python入门教程15:面向对象编程思想

Python入门教程16:错误和异常调试

Python入门教程17:模块与包

-------------------------------------------------

Python爬虫教程03:下载《第1页》古装美女的图片

Python爬虫教程:01网页的请求与服务器的响应

认识HTML网页的基本结构

使用Python,下载一张百度的小姐姐图片

---------------Python源码集合---------------

Python源代码分享:01九九乘法表

Python源代码分享:02海龟画图五角星

Python源代码分享:03画一个奥运五环图

Python源码分享:04列表数据的奇偶求和

Python源代码分享:05使用turtle模块绘制一个彩色螺旋图案

Python源代码分享:06猜数字大小与剪刀石头布

Python源代码分享:07画满天繁星

继续滑动看下一个

Python爬虫教程:02分享采集网页数据的详细步骤

作者一小红牛 我的Python教程
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存