分享好友 最新动态首页 最新动态分类 切换频道
【python】爬虫简介
2024-12-26 06:54

python爬虫是收集互联网数据的常用工具,近年来随着互联网的发展而快速发展。使用网络爬虫爬取网络数据首先要了解网络概念和主要分类,各类爬虫的系统结构、运作方式,常用策略,以及主要的应用场景,同时,出于版权和数据安全的考虑,还需了解目前有关爬虫的应用合法性以及爬取网站是的需要遵守的协议。

【python】爬虫简介

网络爬虫也被称为网络蜘蛛、网络机器人,是一个自动下载网页的计算机程序或自动化脚本。

1.通用网络爬虫

通用网络爬虫又称为全网爬虫,其爬行对象由一批种子URL扩充至整个Web,该类爬虫比较适合为搜索引擎搜索广泛的主题,主要由搜索引擎或大型Web服务提供商使用。 深度优先策略:按照深度由低到高的顺序,依次访问下一级网页链接,直到无法再深入为止。 广度优先策略:按照网页内容目录层次的深浅来爬行,优先爬取较浅层次的页面。当同一层中的页面全部爬行完毕后,爬虫再深入下一层。

2. 聚焦网络爬虫

聚焦网络爬虫又被称作主题网络爬虫,其最大的特点是只选择性地爬行与预设的主题相关的页面。 基于内容评价的爬行策略:该种策略将用户输入的查询词作为主题,包含查询词的页面被视为与主题相关的页面。 基于链接结构评价的爬行策略:该种策略将包含很多结构信息的半结构化文档Web页面用来评价链接的重要性,其中一种广泛使用的算法为PageRank算法。 基于增强学习的爬行策略:该种策略将增强学习引入聚焦爬虫,利用贝叶斯分类器对超链接进行分类,计算出每个链接的重要性,按照重要性决定链接的访问顺序。 基于语境图的爬行策略:该种策略通过建立语境图学习网页之间的相关度,计算当前页面到相关页面的距离,距离越近的页面中的链接优先访问。

3. 增量式网络爬虫

增量式网络爬虫只对已下载网页采取增量式更新或只爬行新产生的及已经发生变化的网页,需要通过重新访问网页对本地页面进行更新,从而保持本地集中存储的页面为最新页面。 常用的更新方法如下。 统一更新法:以相同的频率访问所有网页,不受网页本身的改变频率的影响。 个体更新法:根据个体网页的改变频率来决定重新访问各页面的频率。 基于分类的更新法:爬虫按照网页变化频率分为更新较快和更新较慢的网页类别,分别设定不同的频率来访问这两类网页。

4. 深层网络爬虫

Web页面按照存在方式可以分为表层页面和深层页面两类。表层页面指以传统搜索引擎可以索引到的页面,深层页面为大部分内容无法通过静态链接获取,隐藏在搜索表单后的,需要用户提交关键词后才能获得的Web页面。 深层爬虫的核心部分为表单填写,包含以下两种类型。 基于领域知识的表单填写:该种方法一般会维持一个本体库,通过语义分析来选取合适的关键词填写表单。 基于网页结构分析的表单填写:这种方法一般无领域知识或仅有有限的领域知识,将HTML网页表示为DOM树形式,将表单区分为单属性表单和多属性表单,分别进行处理,从中提取表单各字段值。

目前,多数网站允许将爬虫爬取的数据用于个人使用或者科学研究。但如果将爬取的数据用于其他用途,尤其是转载或者商业用途,严重的将会触犯法律或者引起民事纠纷。 以下两种数据是不能爬取的,更不能用于商业用途。 个人隐私数据:如姓名、手机号码、年龄、血型、婚姻情况等,爬取此类数据将会触犯个人信息保护法。 明确禁止他人访问的数据:例如用户设置了账号密码等权限控制,进行了加密的内容。 还需注意版权相关问题,有作者署名的受版权保护的内容不允许爬取后随意转载或用于商业用途。

当使用一个爬虫爬取一个网站的数据时,需要遵守网站所有者针对所有爬虫所制定的协议,这便是robot.txt协议。

该协议通常存放在网站根目录下,里面规定了此网站那些内容可以被爬虫获取,及哪些网页是不允许爬虫获取的。

1. 通过User-Agent校验反爬

浏览器在发送请求的时候,会附带一部分浏览器及当前系统环境的参数给服务器,服务器会通过User-Agent的值来区分不同的浏览器。

2. 通过访问频度反爬

普通用户通过浏览器访问网站的速度相对爬虫而言要慢的多,所以不少网站会利用这一点对访问频度设定一个阈值,如果一个IP单位时间内访问频度超过了预设的阈值,将会对该IP做出访问限制。 通常需要经过验证码验证后才能继续正常访问,严重的甚至会禁止该IP访问网站一段时间。

3. 通过验证码校验反爬

有部分网站不论访问频度如何,一定要来访者输入验证码才能继续操作。例如12306网站,不管是登陆还是购票,全部需要验证验证码,与访问频度无关。

4. 通过变换网页结构反爬

一些社交网站常常会更换网页结构,而爬虫大部分情况下都需要通过网页结构来解析需要的数据,所以这种做法也能起到反爬虫的作用。在网页结构变换后,爬虫往往无法在原本的网页位置找到原本需要的内容。

5. 通过账号权限反爬

部分网站需要登录才能继续操作,这部分网站虽然并不是为了反爬虫才要求登录操作,但确实起到了反爬虫的作用。 例如微博查看评论就需要登录账号。

针对之前介绍的常见的反爬虫手段,可以制定对应的爬取策略如下。 发送模拟User-Agent:通过发送模拟User-Agent来通过检验,将要发送至网站服务器的请求的User-Agent值伪装成一般用户登录网站时使用的User-Agent值。 调整访问频度:通过备用IP测试网站的访问频率阈值,然后设置访问频率比阈值略低。这种方法既能保证爬取的稳定性,又能使效率又不至于过于低下。 通过验证码校验:使用IP代理,更换爬虫IP;通过算法识别验证码;使用cookie绕过验证码。 应对网站结构变化:只爬取一次时,在其网站结构调整之前,将需要的数据全部爬取下来;使用脚本对网站结构进行监测,结构变化时,发出告警并及时停止爬虫。 通过账号权限限制:通过模拟登录的方法进行规避,往往也需要通过验证码检验。 通过代理IP规避:通过代理进行IP更换可有效规避网站检测,需注意公用IP代理池是 网站重点监测对象。

2.学习软件

3.学习资料

4.实战资料

5.视频课程

好啦今天的分享就到这里结束了,快乐的时光总是短暂呢,想学习更多课程的小伙伴不要着急,有更多惊喜哦~

最新文章
wps怎么制作流程图
流程图作为一种直观的表达工具,广泛应用于项目管理、流程优化、教育培训等多个领域。WPS Office作为一款功能强大的办公软件,提供了便捷的流程图制作工具,帮助用户轻松创建高效、美观的流程图。下面,我们就来详细讲解一下如何在WPS中制
深圳10所高中换校长 官方称为促进均衡发展
  常平中学校长调东莞一中任校长、虎门中学校长调市第五高级中学任校长、麻涌中学副校长调长安中学任校长……今秋新学年开始,东莞完成了直属学校校长大轮岗工作。其中市教育局直属的1 9所公办普通高中,有10所学校更换校长,涉及学校超
尼桑皮卡四驱怎么挂
尼桑皮卡四驱的挂法如下 车辆处于停车状态档位在空挡或驻车挡。 不同车型四驱控制位置有所不同有的在挂档器旁边的盒子里打开盒子有个小挂挡器可控制有的在正驾驶座位下面需拆下座位和垫布有的在发动机右侧控制盒中有的在副驾驶座椅下面地毯
科大讯飞智能办公本Air 2 8.2英寸电子书墨水屏AI星火大模型
AI能力:融合了讯飞星火大模型能力,提供会议纪要、笔记分析、A写作三大A功能。这些功能可以大幅提升工作效率,如自动生成会议纪要、整理历史笔记、快速生成稿件等。
国外10个优秀音乐网站推荐
   ①The Hype Machine-炒作机器  一个专项性的聚合网站,专门用于跟踪Blog中的音乐资源,可以在线收听,用于让访客更好的发现各类音乐或者新的艺人等等。   ②Musgle-基于Google的简易音乐搜索工具  利用Google
博彩老头近期排列五分析:第5位看好奇数出号
  (17178-17179期)  第1位走势  本期开出奖号6,本号位近期走势以大振幅为主。重心在奇号区,下周期防范大振幅振荡。看好偶号区热出,提防2路1路号回补为主。重点关注2、5、8。  定胆:258  杀号:6  第2位走势  本期开出
文档导出助手下载-文档导出助手v3.0.1.2 官方破解版
文档导出助手是一款简洁的微信公众号文章导出工具,支持生成pdf、word、epub格式,能够帮助用户保存文章的图片、封面、以及排版格式,让用户能够更好的保存自己喜欢的内容,有需要的用户不要错过了,赶快来下载吧!使用采集阅读点赞功能:s
比漫熊漫画官方正版 v1.0.0 最新版
比漫熊app,推荐海量高清漫画资源,免费看漫画,资源更齐全,各种题材漫画一站网罗,免费阅读,超多好看的漫画等你体验,随时随地阅读喜欢的内容。比漫熊免费软件都是一些最为热门的漫画在里面,这些在其他平台可都是免费的,现在你只需要
多结局游戏有哪些好玩 人气高的多结局游戏排行榜
探寻游戏世界中的多重精彩,这篇文章带你领略人气爆棚的多结局游戏排行榜。无论是深度剧情还是无穷策略,从经典到现代,各种令人着迷的游戏作品悉数登场。无论你是寻求刺激的玩家还是故事爱好者,这里定能满足你的探索欲望。快来一窥究竟,
深入探讨DAT编程修改技术 如何修改编程,DAT编程修改技术深入探讨,如何修改编程的技巧与策略
在当今数字化时代,DAT编程修改技术已经成为许多领域中不可或缺的一部分,无论是软件开发、游戏修改还是数据分析,DAT编程修改技术都发挥着重要的作用,本文将深入探讨DAT编程修改技术的相关概念、应用场景以及实际操作方法,帮助读者更好
相关文章
推荐文章
发表评论
0评