爬虫到底是个什么玩意?
为什么要有这么多参数要设置?
到底应该怎么发送请求?
请求库,解析库,存储数据的方式?
请求到的内容跟浏览器看到的内容不一样?
爬虫基本原理的梳理
1.什么是爬虫?---->请求网站并提取数据的自动化程序。
爬虫呢也就是网络爬虫,可以理解为在网络上爬行着一只蜘蛛,互联网可以把它比喻为一个大网。这个爬虫呢就是在这个网上一直爬来爬去的一个蜘蛛,它如果在这个互联网上遇到一些网站资源就可以把它抓取下来。怎么抓取呢?就是由你来控制了。
#1、什么是互联网? 互联网是由网络设备(网线,路由器,交换机,防火墙等等)和一台台计算机连接而成,像一张网一样。 #2、互联网建立的目的? 互联网的核心价值在于数据的共享/传递:数据是存放于一台台计算机上的,而将计算机互联到一起的目的就是为了能够方便彼此之间的数据共享/传递,否则你只能拿U盘去别人的计算机上拷贝数据了。 #3、什么是上网?爬虫要做的是什么? 我们所谓的上网便是由用户端计算机发送请求给目标计算机,将目标计算机的数据下载到本地的过程。 #3.1 只不过,用户获取网络数据的方式是: 浏览器提交请求->下载网页代码->解析/渲染成页面。 #3.2 而爬虫程序要做的就是: 模拟浏览器发送请求->下载网页代码->只提取有用的数据->存放于数据库或文件中 #3.1与3.2的区别在于: 我们的爬虫程序只提取网页代码中对我们有用的数据 #4、总结爬虫 #4.1 爬虫的比喻: 如果我们把互联网比作一张大的蜘蛛网,那一台计算机上的数据便是蜘蛛网上的一个猎物,而爬虫程序就是一只小蜘蛛,沿着蜘蛛网抓取自己想要的猎物/数据 #4.2 爬虫的定义: 向网站发起请求,获取资源后分析并提取有用数据的程序 #4.3 爬虫的价值: 互联网中最有价值的便是数据,比如天猫商城的商品信息,链家网的租房信息,雪球网的证券投资信息等等,这些数据都代表了各个行业的真金白银, 可以说,谁掌握了行业内的第一手数据,谁就成了整个行业的主宰,如果把整个互联网的数据比喻为一座宝藏,那我们的爬虫课程就是来教大家如何来高效地挖掘这些宝藏, 掌握了爬虫技能,你就成了所有互联网信息公司幕后的老板,换言之,它们都在免费为你提供有价值的数据。
爬虫的流程:
我们平时在浏览网页的时候,在浏览器里输入一个网址,然后敲击回车,我们就会看到网站的一些页面,那么这个过程实际上就是这个浏览器请求了一些服务器然后获取到了一些服务器的网页资源,然后我们看到了这个网页。
请求呢就是用程序来实现上面的过程,就需要写代码来模拟这个浏览器向服务器发起请求,然后获取这些网页资源。那么一般来说实际上获取的这些网页资源是一串HTML代码,这里面包含HTML标签,还有一些在浏览器里面看到的文字。那么我们要提取的一些数据就包含在这些HTML文本里面。我们要做的下一步工作就是从这些文本里提取我们想要的一些信息(比如一段话,一个手机号,一个文字这类的),这就是我们提取的一个过程。提取出来之后呢我们就把提取出来的信息存到数据库啊文本啊这类的。这就是完成了一个数据采集的过程。
我们写完程序之后呢就让它一直运行着,它就能代替我们浏览器来向服务器发送请求,然后一直不停的循环的运行进行批量的大量的获取数据了,这就是爬虫的一个基本的流程。
爬虫的工作原理:
打开一个浏览器---输入网址---回车----看到呈现的有关关键字网站的列表(每一个网站里有标题,描述信息,站点,百度快照连接等等之类的)
我们要用爬虫抓取有关新闻的网页面的话怎么做呢? -----> 点击右键--审查元素---控制台(Elements是网页源代码(我们看到的网页就是源代码解析出来的),)-----> 把代码获取下来用一些解析库把代码解析出来然后存成一些结构化的数据。
原文:https://www.cnblogs.com/zhangrenguo/p/10488806.html