python网络爬虫
python爬虫环境与爬虫简介
认识爬虫
- 浏览网页基本流程
网络爬虫模拟了浏览器去发送请求并且返回响应结果的一个过程。
-
爬虫概念
网络爬虫也被称为网络蜘蛛、网络机器人,是一个自动下载网页的计算机程序或自动化脚本。
网络爬虫就像一只蜘蛛一样在互联网上沿着URL的丝线爬行,下载每一个URL所指向的网页,分析页面内容。 -
爬虫的原理
(1)通用网络爬虫
通用网络爬虫又称为全网爬虫,其爬行对象由一批种子URL扩充至整个Web,该类爬虫比较适合为搜索引擎搜索广泛的主题,主要由搜索引擎或大型Web服务提供商使用。深度优先策略:按照深度由低到高的顺序,依次访问下一级网页链接,直到无法再深入为止。
广度优先策略:按照网页内容目录层次的深浅来爬行,优先爬取较浅层次的页面。当同一层中的页面全部爬行完毕后,爬虫再深入下一层。
全网爬虫一般成本较高,范围较大。
(2)聚焦网络爬虫
聚焦网络爬虫又被称作主题网络爬虫,其最大的特点是只选择性地爬行与预设的主题相关的页面。基于内容评价的爬行策略:该种策略将用户输入的查询词作为主题,包含查询词的页面被视为与主题相关的页面。
基于链接结构评价的爬行策略:该种策略将包含很多结构信息的半结构化文档Web页面用来评价链接的重要性,其中一种广泛使用的算法为PageRank算法。
基于增强学习的爬行策略:该种策略将增强学习引入聚焦爬虫,利用贝叶斯分类器对超链接进行分类,计算出每个链接的重要性,按照重要性决定链接的访问顺序。
基于语境图的爬行策略:该种策略通过建立语境图学习网页之间的相关度,计算当前页面到相关页面的距离,距离越近的页面中的链接优先访问。
(3)增量式网络爬虫
增量式网络爬虫只对已下载网页采取增量式更新或只爬行新产生的及已经发生变化的网页,需要通过重新访问网页对本地页面进行更新,从而保持本地集中存储的页面为最新页面。
常用的更新方法如下。统一更新法:以相同的频率访问所有网页,不受网页本身的改变频率的影响。
个体更新法:根据个体网页的改变频率来决定重新访问各页面的频率。
<