Python爬虫:爬虫基本概念、流程及https协议

一、爬虫的基本概念

1.为什么要学习爬虫

如今,人工智能,大数据离我们越来越近,很多公司在开展相关的业务,但是人工智能和大数据中有一个东西非常重要,那就是数据,但是数据从哪里来呢?

首先我们来看下面这个例子:

在这里插入图片描述

这是微博的微指数的一个截图,他把在微博上的用户的微博和评论中的关键词语做了提取,然后进行了统计,然后根据统计结果得出某个词语的流行趋势,之后进行了简单的展示

类似微指数的网站还有很多,比如百度指数,阿里指数,360指数等等,这些网站有非常大的用户量,他们能够获取自己用户的数据进行统计和分析

那么对于一些中小型的公司,没有如此大的用户量的时候,他们该怎么办呢?

1.1 数据的来源

  • 去第三方的公司购买数据(比如企查查)
  • 去免费的数据网站下载数据(比如国家统计局)
  • 通过爬虫爬取数据
  • 人工收集数据(比如问卷调查)

在上面的来源中:人工的方式费时费力,免费的数据网站上的数据质量不佳,很多第三方的数据公司他们的数据来源往往也是爬虫获取的,所以获取数据最有效的途径就是通过爬虫爬取

1.2 爬取到的数据用途

*加粗样式**

通过前面的列子,能够总结出,爬虫获取的数据的用途:

  • 进行在网页或者是app上进行展示
  • 进行数据分析或者是机器学习相关的项目

2.什么是爬虫

网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。

原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做

3. 爬虫的更多用途

  • 12306抢票

  • 网站上的投票

  • 短信轰炸

二、爬虫的分类和爬虫的流程

  1. 了解 爬虫分类
  2. 记忆 爬虫流程
  3. 了解 robots协议

1.爬虫的分类

在上一小结中,我们介绍爬虫爬取到的数据用途的时候,给大家举了两个例子,其实就是两种不同类型的爬虫

根据被爬网站的数量的不同,我们把爬虫分为:

  • 通用爬虫 :通常指搜索引擎的爬虫(https://www.baidu.com)

  • 聚焦爬虫 :针对特定网站的爬虫

2.爬虫的流程

请思考:如果自己要实现一个和百度新闻一样的网站需要怎么做?

爬虫的工作流程:

  • 向起始url发送请求,并获取响应
  • 对响应进行提取
  • 如果提取url,则继续发送请求获取响应
  • 如果提取数据,则将数据进行保存

3.robots协议

在百度搜索中,不能搜索到淘宝网中某一个具体的商品的详情页面,这就是robots协议在起作用

Robots协议:网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,但它仅仅是互联网中的一般约定

三、爬虫http和https

发送请求,获取响应的过程中 就是发送http或https的请求,获取http或https的响应

1.http和https的概念

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

HTTPS比HTTP更安全,但是性能更低

2.浏览器发送HTTP请求的过,

在这里插入图片描述

2.1 http请求的过程

  1. 浏览器先向地址栏中的url发起请求,并获取相应

  2. 在返回的响应内容(html)中,会带有css、js、图片等url地址,以及ajax代码,浏览器按照响应内容中的顺序依次发送其他的请求,并获取相应的响应

  3. 浏览器每获取一个响应就对展示出的结果进行添加(加载),js,css等内容会修改页面的内容,js也可以重新发送请求,获取响应

  4. 从获取第一个响应并在浏览器中展示,直到最终获取全部响应,并在展示的结果中添加内容或修改————这个过程叫做浏览器的渲染

2.2 注意:

但是在爬虫中,爬虫只会请求url地址,对应的拿到url地址对应的响应(该响应的内容可以是html,css,js,图片等)

浏览器渲染出来的页面和爬虫请求的页面很多时候并不一样

所以在爬虫中,需要以url地址对应的响应为准来进行数据的提取

3.HTTP请求的形式

在这里插入图片描述

这个图大家见过很多次,那么在浏览器headers中,点击view source来具体观察其中的请求行,请求头部和请求数据是什么样子的

4.HTTP常见请求头

  1. Host (主机和端口号)
  2. Connection (链接类型)
  3. Upgrade-Insecure-Requests (升级为HTTPS请求)
  4. User-Agent (浏览器名称)
  5. Accept (传输文件类型)
  6. Referer (页面跳转处)
  7. Accept-Encoding(文件编解码格式)
  8. Cookie (Cookie)
  9. x-requested-with :XMLHttpRequest (表示该请求是Ajax异步请求)

5.响应状态码(status code)

常见的状态码:

  • 200:成功
  • 302:临时转移至新的url
  • 307:临时转移至新的url
  • 404:找不到该页面
  • 500:服务器内部错误
  • 503:服务不可用,一般是被反爬

记忆 http请求头的形式:

  GET /item/503/1227315?fr=aladdin HTTP/1.1
  Host: www.baidu.com

记忆 http响应头的形式 :

  HTTP/1.1 200 OK
  Connection: keep-alive

了解 http响应状态码

  - 200:成功
  - 302:临时转移至新的url 

获取免费代理ip

在这里插入图片描述

  • 31
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
爬虫是一种自动化程序,能够模拟人类在网络上的浏览行为,从Web页面中提取数据并进行分析和存储。而SharePoint是一种由Microsoft开发的企业级协作平台,用于存储、组织、共享和访问各种企业数据和文档。 爬虫可以用于从SharePoint平台上提取数据。通过模拟用户登录SharePoint、浏览页面、点击链接等操作,爬虫可以获取到需要的数据,并进行存储和处理。这样可以自动化地从SharePoint上抓取大量的数据,节省了手动复制粘贴的时间和人力成本。 在爬虫中,常用的技术包括网络请求、HTML解析和数据提取。爬虫首先发送网络请求到SharePoint服务器,获取到相应的页面内容。然后通过HTML解析技术,解析页面的结构,找到需要的数据所在的位置。最后,将提取到的数据存储到数据库或者其他文件中,或者进行进一步的分析和处理。 在实际应用中,爬虫可以用于很多领域的数据提取和分析。比如,在企业中,可以使用爬虫从SharePoint平台上提取员工的信息、项目的进度、销售数据等。在学术研究中,可以使用爬虫从SharePoint平台上获取论文的信息、学术会议的日程安排等。 需要注意的是,使用爬虫需要遵守相关法律法规和网站的使用规定。在进行爬虫操作时,应尊重网站的规则,避免对服务器造成过大的负担,同时保护用户的隐私信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是Dream呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值