debian怎么配置静态ip地址
302
2022-11-16
【python实现网络爬虫(2)】网络爬虫基础
网络爬虫是啥
网络和爬虫: 当今最大的网络是互联网,最大的爬虫就是就是各类搜索引擎,包括谷歌、百度等
网络爬虫: 就是按照一定的规则去爬取人类所需要信息的程序,主要通过去URL的请求来实现
网络爬虫作用
数据监控、数据收集、信息集合、资源采集
浏览网页的过程
(1)输入网址 (2)浏览器向DNS服务商发送请求 (3)找到对应服务器 (4)服务器解析请求 (5)服务器处理请求得到最终结果发回去 (6)浏览器解析返回的数据 (7)展示给用户
DNS(Domain name resolution )域名解析,是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。(记住ip地址比较麻烦,但是记住网址就相对比较简单)
域名
这里以豆瓣为例
处理网页的源代码
网络爬虫分类
全网爬虫: 各大搜索引擎
主题爬虫: 只选择需要相关信息
增量式爬虫: 只爬取数据库中改变的部分
深层网络爬虫: 隐藏在表单后的页面
一般情况下主要和“主题爬虫”和“深层网络爬虫”打交道较为常见
提取信息
获取网页源代码是没有什么意义的,必须提取出我们需求的信息来,才能为数据分析以及后续处理做准备。网页都是有规则的,我们只要找出规则,写好一条URL的爬取代码,就可以不断循环迭代其他网页代码上了
常见的页面解析库有BeautifulSoup,Lxml,pyquery等,安装方式(推荐)
pip install bs4 -i 聚焦爬虫三大类
广度优先算法(Breadth-First-Search)
也叫广义优先搜索,又称为宽度优先搜索,或横向优先搜索,简称BFS,是一种图形搜索演算法。简单的说,BFS就是从根节点开始,沿着树的宽度遍历树的节点,如果发现目标,则演算终止。广度优先搜索的实现一般采用open-closed表
拆解步骤一、获取一个页面的所有URL,将URL按顺序存入列表
拆解步骤二、整个页面URL爬取完毕,从列表中按顺序取出URL,再次重复第一步
拆解步骤三、直至列表为空
深度优先算法(Depth-First-Search)
是一种用于遍历或者搜索树或图的算法,沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所在边都已经探寻过,搜索将回溯到发现节点v那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止(树的前序遍历)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~