| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> Python实用技术——爬虫(一):爬虫基础 -> 正文阅读 |
|
[Python知识库]Python实用技术——爬虫(一):爬虫基础 |
目录 学完Python的入门以后,我们便开始深入的学习如何更好的玩Python,寓教于乐。在学习的过程中玩,听人家说,爬虫最容易让初学者有种满足感,意思就是这个内容不是很难。希望大家能学到东西,能看懂我写的东西。 首先,开始这章内容之前,送给大家两句话,希望大家熟记。 网络爬虫必须遵守法律法规。 技术并无对错。
1,爬取什么数据不能包含用户的个人信息、隐私或者他人的商业秘密 2,如何爬取得来的严格遵守网站设置的robots协议,必须禁止"侵入” 3,爬取之后如何使用获取的数据不能替代数据来源方的原服务。 在如今的大数据时代,得数据者得天下的说法是毫不夸张的,现在的社会中,无处不充斥着数据的身影,各行各业中,数据都占据着及其重要的地位,这也就意味着,我们能爬取到的数据只能是人家允许我们看到的,如果人家不给我们看,即设置了一些阻碍去禁止我们爬取的时候,千万不要为了显示自己的能耐而去攻击人家,这是违法的。现在的数据已成为重要的生产要素与核心资源。 对于大众来说,爬虫是成本最低,最方便的数据获取方式,简单到只需要几行代码,数据就成为了囊中之物。但是,风险也高,也就是上面我所说的,网络爬虫必须遵守法律法规。国家已经颁布了大量相关法律,最近的像2021年6月刚颁布的数据安全法,不要试图挑战国家法律!任何组织、个人收集数据应当采取合法、正当的方式,不得窃取或者以其他非法方式获取数据。
1994年6月30日,经过搜索引擎研究人员和被爬取网站站长的协商,共同起草了第一-份“robots协议”成为搜索技术企业共同遵守的规范。
所以呢,需要法律进一步约束网络参与者的行为。
1,为什么要从一个简单的请求开始? 一个简单的请求是一个HTTP请求,那什么是HTTP呢? 2,爬虫就是模拟浏览器向服务器发送请求,然后从服务器返回的数据中,筛选目标数据。 因此,我们在学习爬虫之前,我们需要先了解请求与响应的这个过程。 3, 对于网站而言,一般都要部署一个网站服务器,主要功能就是存放网站文件和数据文件,响应用户请求,让用户能够浏览网页下载数据。因为服务器一般使用HTTP协议来与浏览器进行信息交流。因此,网站服务器也常被称为HTTP服务器。 对于互联网用户而言,使用的是web客户端,最常见的就是各类浏览器。我们仅需要输入网址,就能得到想要的页面,我们今天主要的目的就是了解这个过程。 4,请求与响应过程: 1)浏览器中输入URL URL ( Uniform Resource Locator) 互联网上的每个文件都有一个唯一的URL 2)浏览器根据输入的URL输入的URL寻找对应的IP地址 浏览器根据输入的URL寻找对应的IP地址。 IP地址( Internet Protocol Address ) 3)客户端与目标服务器建立TCP连接 TCP (Transmission Control Protocol) 通过IP地址找到服务器后,目的肯定是为了进行信息交流,因此,必须要建立一个TCP连接,为了在不可靠的互联网络上提供可靠的、端到端的字节流而专门设计的一个传输协议 4)浏览器向web服务器发送HTTP请求 5)收到请求后,将web客户端请求的文档(HTML)作为响应返回(成功与否) web服务器收到HTTP请求后,将web客户端请求的文档作为响应返回给用户。 6)浏览器对文档进行处理,加载,解析,渲染。 HTTP (HyperText Transfer Protocol ) 我们要知道,打开网页的本质是什么? 本质就是对网站服务器发送请求,然后由网站服务器返回我们需要访问的文件。 二,HTTP协议1,万维网首先,我们要知道万维网,万维网是什么呢? ?这是百度的网址,我们可以看到,开头的地方首先就是https,这就是HTTP协议。 所谓万维网就是后面的www,即world wide website。 2,协议:网络通信的参与方必须遵循相同的规则。 世界上运行着很多设备,如果这些设备想要能够相互交流,那就必须要定义一些通用的规则来进行交流,人们把操作系统之间的通信称为“协议”。 ?网络通信需要使用相同的一组网络协议。 如果要在客户端和服务端传输web文档,HTTP协议就是传输web文档的一种主要协议。 浏览器发送请求,网站服务器响应请求的这个过程中,必须严格遵循HTTP协议的格式,工作方式提供所需的数据。 三,HTTP知识编写爬虫程序,实际上就是模仿浏览器,向网站服务器发送请求。 ?HTTP请求报文: 四,HTTP请求方法:HTTP定义了一组请求方法,用来表明对目标资源要执行的操作。 ?浏览器访问网站一般都使用get请求方法。 ? ? 五,HTTP的响应编写爬虫程序的主要工作: 获取HTTP响应,从中筛选出自己想要的数据。 HTTP响应报文: ? 六,HTTP的响应状态码状态码告知网站服务器的响应状态 ? ? ? 七,HTTP的响应头 HTTP的响应体中,包含了服务器返回的所有网页数据。? ? 八,HTTPS协议(Hypertext Transfer?Protocol Secure)超文本传输安全协议? HTTPS协议是一种通过网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS HTTP协议是明文的,不安全的,而HTTPS协议对网络数据传输进行了加密,能够有效保护用户隐私。 HTTPS开发的主要目的是提供对网站服务器的身份认证,保护交换数据的隐私与完整性 ? 九,初始HTML文档我们必须要理解网页的基本构造与组成,然后才能去分析筛选出需要的数据。 ?无论是什么样的网页,都必须是这样的布局。HTML是支撑网页内容的部分。 通常来讲,我们在浏览器中看到的网页内容就是浏览器解析超文本后的输出结果,即HTML。 HTML超文本标记语言( Hyper Text Markup Language) ?不是编程语言,而是标记语言 服务器将HTML文档返回给客户端之后,我们使用的浏览器是知道HTML语法的,所以它会自动解析。解析完之后就是我们所看到的页面。能够实现比文本更丰富的内容。 十,HTML的标签HTML标签 标签对中的第一个标签是开始标签,第二个标签是结束标签。 一些高频标签:? ? ? HTML元素: 从开始标签到结束标签之间的所有代码。 ? ? ? ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 16:51:15- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |