目录
一、爬虫是什么
二、爬虫过程
(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文件,所以我们就无法载入完整内容。
至于解决办法,我们会在后续文章中一一道来。