爬虫基础(五)爬虫基本原理

目录

一、爬虫是什么

二、爬虫过程

(1)获取网页

(2)提取信息

(3)保存数据

三、爬虫可爬的数据

四、爬虫问题


一、爬虫是什么

互联网,后面有个网字,我们可以把它看成一张蜘蛛网。

爬虫,后面有个虫子,我们可以把它看成蜘蛛。

爬虫之于互联网,就是蜘蛛之于蜘蛛网。

蜘蛛每爬到一个节点,就是爬虫访问了一个网页。

用正式的话来说,

爬虫,就是自动提取、保存网页信息的程序。

二、爬虫过程

(1)获取网页

获取网页,就是获取网页的源代码。

(注:因为源代码包含各种信息,所以要获取源代码)

(2)提取信息

提取信息,一般采用正则表达式。

另外,由于网页结构具有一定规则,所以有的是采用其他方式提前的

如:

Beautiful Soup、pyquery、lxml

(3)保存数据

保存数据,可以保存为TXT文件、JSON文件

当然,也可以保存到数据库:MySQL、MongoDB等。

三、爬虫可爬的数据

在以前的文章中,我们知道网页中的信息都藏在URL中,所以一般来说,只要是URL的数据,我们就可以抓取。

四、爬虫问题

最常见的一个问题,就是无法爬出完整数据

即,我们爬出来的数据,和我们看到的数据并不一样,这是怎么回事呢?

因为,在该网站的HTML代码中

可能引入了app.js文件,其负责整个文件的渲染。

而当浏览器打开这个界面时,首先加载HTML内容

然后引入app.js文件,并发起请求。

然后执行该文件中的JavaScript代码,

而JavaScript代码会改变HTML中的节点,并添加内容,最后得到内容

但是当我们使用库:urllib和request请求界面时,只得到HTML代码

但它不会继续加载JavaScript文件,所以我们就无法载入完整内容。

至于解决办法,我们会在后续文章中一一道来。

相关推荐
Smart-Space29 分钟前
tkinter-TinUI-xml实战(11)文本阅读、编辑器
python·tkinter·tinui
通信射频老兵1 小时前
在5G网络中使用IEEE 1588实现保持时间同步
网络·5g
我的青春不太冷1 小时前
《深入理解HTTP交互与数据监控:完整流程与优化实践》
网络·经验分享·科技·网络协议·学习·http·架构
加德霍克2 小时前
【机器学习】自定义数据集,使用scikit-learn 中K均值包 进行聚类
python·机器学习·均值算法·scikit-learn·作业
老大白菜2 小时前
Windsurf cursor vscode+cline 与Python快速开发指南
ide·vscode·python
码界筑梦坊2 小时前
基于Flask的哔哩哔哩综合指数UP榜单数据分析系统的设计与实现
后端·python·flask·毕业设计
doubt。2 小时前
1.攻防世界easyphp
网络·安全·web安全·网络安全·php·代码复审
Long_poem3 小时前
【第九天】零基础入门刷题Python-算法篇-数据结构与算法的介绍-六种常见的图论算法(持续更新)
python·算法·图论
xianwu5433 小时前
mysql索引snkw
开发语言·网络·数据库·c++·mysql