当前位置:   article > 正文

一篇万字博文带你入坑爬虫这条不归路 【万字图文】

一篇万字博文带你入坑爬虫这条不归路 【万字图文】

①最简单的单一页面数据的爬取:

url——>发送请求,获取响应——>提取数据——>保存数据

②多页面数据的爬取:

发送请求,获取响应——>提取url地址,继续请求

聚焦爬虫开发流程

搜索引擎流程

一般爬虫开发流程

(5)爬虫开发的重难点:


爬虫难点主要分为两个方向:

  1. 数据的获取(PS:自己人何苦为难自己人嘞!)

网络公共资源都是为用户准备的,为了避免被爬虫采集,服务端会设置非常多的图灵测试,阻止爬虫的恶意爬取,也即是反爬措施。爬虫开发工程师在开发爬虫时,需要解决这些反爬措施。我们在开发爬虫的过程中,有很大一部分的工作就是处理这些反爬措施。

  1. 采集的速度

大数据时代,需要巨大的数据量,动辄千万条的级别,甚至上亿条。如果采集速度跟不上,耗时过长,那么就达不到商业要求。一般我们会采取并发以及分布式来解决速度上的问题。这也是爬虫开发过程中的另外一个重心。

知识点补给站: robots协议:网站通过robots协议,告诉我们搜索引擎哪些页面可以抓取,哪些页面不能抓取, 但它仅仅是道德层面上的约束。
  • 曾经有人问过一些爬虫界大佬一个问题:爬虫能抓怎样的数据?

  • “可见即可爬”,大佬轻蔑一笑说道。

  • (大佬就是大佬,牛皮!)

在这里插入图片描述

2.HTTP和HTTPS

==========================================================================

在这里插入图片描述

知识点补给站:

大多数商业应用采用的架构:

1.c/s 即 client(客户端) server(服务端)

2.b/s 即 browser(浏览器) server(服务端)

3.m/s 即 moblie(移动端) server(服务端)

以上统称为客户端与服务端!!!

在这里插入图片描述

网络爬虫是伪装成客户端与服务端进行数据交互的程序。那么,客户端和服务端该怎样进行数据交互呢?就像我们中国人用中文交流,说的中国的语法,我们可以正常沟通。客户端与服务端如果不统一一下,那不就乱套了,所以在网络传输方面产生了众多协议,HTTP就是其中一种。

(1)HTTP协议


目前互连网上90%的网络传输都是基于http协议(补充:http协议是一个应用层协议)。(注意:爬取想要的数据前,一定要明确其使用的是什么协议!虽然90%都是基于http协议,但是仍有10%采用的是其他的协议,比如:弹幕可能采取的是websocket协议!这样的话,我们采取传统的爬虫就无法爬取到了。)

HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。

HTTP是基于TCP/IP通信协议来传递数据的(HTML 文件, 图片文件, 查询结果等)。

注意:TCP/IP有个面向连接的特性!(意义:保证数据的完整性)

让咱们生动的了解一下TCP/IP通信协议中的三次握手四次挥手:

在这里插入图片描述

  • 三次握手建立连接:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/720376
推荐阅读
相关标签