我是靠谱客的博主 故意御姐,最近开发中收集的这篇文章主要介绍网络爬虫学习为什么要学习爬虫?什么是爬虫?爬虫分类?聚焦网络爬虫流程?robots协议?HTTP及HTTPS ?requests模块,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

了解爬虫

  • 为什么要学习爬虫?
  • 什么是爬虫?
  • 爬虫分类?
  • 聚焦网络爬虫流程?
  • robots协议?
  • HTTP及HTTPS ?
  • requests模块

为什么要学习爬虫?

当我们需要搜索数据时,该去哪里查找呢? 简单的就是搜索引擎,例如百度。这时候我们就可以把百度理解成一个大型的爬虫。

![在这里插入图片描述](https://img-blog.csdnimg.cn/ebcb843bc9084c1d8e5309ff7489cc54.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2VpeGluXzQ4NDc4MjI3,size_20,color_FFFFFF,t_70,g_se,x_16

很多大型的网站像腾讯、百度都会有自己的数据统计网站,比如百度的百度指数。
![在这里插入图片描述](https://img-blog.csdnimg.cn/881a28fbb5f543f489bf63028df8d508.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2VpeGluXzQ4NDc4MjI3,size_20,color_FFFFFF,t_70,g_se,x_16在这里插入图片描述
点击百度指数,进入如下页面:
![在这里插入图片描述](https://img-blog.csdnimg.cn/9d69c0b2b1db41689e53b071ae2dfd88.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2VpeGluXzQ4NDc4MjI3,size_20,color_FFFFFF,t_70,g_se,x_16在这里插入图片描述
进入这个页面后,搜索关键字会得出这个关键字流量热度的数据分析。

但这些数据分析总结的前提都来自于百度本身庞大的用户数据。对于中小型企业来说,没有这么庞大的用户数据,想要获得这些数据除了通过花钱购买数据或者找免费的数据外,最有效的方法就是通过爬虫爬取。

什么是爬虫?

爬虫又被称网页蜘蛛,英译:spider.
爬虫是指按照一定规则自动抓取互联网中的相关信息的程序,本质就是模拟浏览器–》发送网络请求–》接收请求响应。
理论上来说,浏览器能做的事情,爬虫都可以做到。
在这里插入图片描述

爬虫分类?

大致可分为两种:通用网络爬虫聚焦网络爬虫两种

  • 通用网络爬虫

  • 是搜索引擎抓取系统(baidu、Google等)的重要组成部分,主要目的是将互联网上的网页下载到本地,形成一个互联网内容镜像备份。 爬取目标数据巨大。对爬取性能要求非常高,应用于大型搜索引擎中,有非常高的应用价值

  • 基本构成:初始URL集合,URL队列,页面爬行模块,页面分析模块,页面数据库,链接过滤模块等构成。

  • 通用网络爬虫的爬行策略:主要有深度优先爬行策略和广度优先爬行策略

  • 聚焦网络爬虫

  • 是“向特定主题需求”的一种网络爬虫程序,它与通用搜索引擎爬虫的区别在于:聚焦爬虫在实施网页爬取时,会对内容进行处理,尽量保证只抓取与需求相关的网页信息

  • 基本构成:初始URL,URL队列,页面爬行模块,页面分析模块,页面数据库,连接过滤模块,内容评价模块,链接评价模块等构成

目前第一种类型的爬虫已经被垄断,我们主要学习的爬虫都是第二种。

聚焦网络爬虫流程?

在这里插入图片描述
首先拿到网址存放于url list里,再通过地址去请求响应内容,根据响应数据内容,从中提取中有价值的数据,最后将提取的数据存于数据库中。

robots协议?

Robots协议是网站出于安全和隐私考虑,防止搜索引擎抓取敏感信息而设置的,搜索引擎的原理是通过一种爬虫spider程序,自动搜集互联网上的网页并获取相关信息。

而鉴于网络安全与隐私的考虑,每个网站都会设置自己的Robots协议,来明示搜索引擎,哪些内容是愿意和允许被搜索引擎收录的,哪些则不允许,搜索引擎则会按照Robots协议给予的权限进行抓取。

Robots协议的全称是“网络爬虫排除标准”(Robots ExclusionProtocol),(也称为爬虫协议、机器人协议等)网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。

Robots协议是国际互联网界通行的道德规范,基于以下原则建立:
1、搜索技术应服务于人类,同时尊重信息提供者的意愿,并维护其隐私权;
2、网站有义务保护其使用者的个人信息和隐私不被侵犯。

Robots协议代表了一种契约精神,互联网企业只有遵守这一规则,才能保证网站及用户的隐私数据不被侵犯,违背Robots协议将带来巨大安全隐忧。

HTTP及HTTPS ?

HTTP:

  • 超文本传输协议
  • 默认端口号:80

HTTPS:

  • HTTP+SSL(安全套接字层),即带有安全套接字层的超文本传输协议
  • 默认端口号:443

HTTP请求过程:在浏览器输入网址时,浏览器会把域名传给DNS服务器,服务器会解析域名得到IP地址,并把IP地址传给浏览器,然后浏览器会根据这个IP地址去请求网站页面,而这个页面就会携带HTML、CSS、JS及静态图片等前端页面文件返回到浏览器,这样就能正常访问网站了
在这里插入图片描述

HTTPS比HTTP安全,但是HTTPS相对来说需要加密及解密操作,故HTTPS性能更低

requests模块

  • requests的底层实现就是urllib
  • requests在python2和3中完全通用,方法一样
  • request简单易用
  • requests能够帮助我们自动解压响应内容

python中常用request模块和urllib模块进行网络请求,requests的底层实现就是urllib.但是相对来说,urllib版本较多,且相对复杂。requests就是对urllib,进行了封装,使用起来方便简单,也无兼容问题。因为服务器返回的数据本身是经过压缩的,需要解压才能看到。而requests能够帮助我们自动解压响应数据

最后

以上就是故意御姐为你收集整理的网络爬虫学习为什么要学习爬虫?什么是爬虫?爬虫分类?聚焦网络爬虫流程?robots协议?HTTP及HTTPS ?requests模块的全部内容,希望文章能够帮你解决网络爬虫学习为什么要学习爬虫?什么是爬虫?爬虫分类?聚焦网络爬虫流程?robots协议?HTTP及HTTPS ?requests模块所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(28)

评论列表共有 0 条评论

立即
投稿
返回
顶部