HTTP请求

1.首先需要了解一下http请求,当用户在地址栏中输入网址,发送网络请求的过程是什么?

可以参考我之前学习的时候转载的一篇文章一次完整的HTTP事务过程–超详细

2.还需要了解一下http的请求方式

有兴趣的同学可以去查一下http的八种请求方法,这里呢主要说下get请求和post请求,这两种在以后学习中会用到的比较多。

get请求:GET方法用于使用给定的URI从给定服务器中检索信息,即从指定资源中请求数据。我们输入网址访问网站一般就是get请求。[做运维的小年轻]使用GET方法的请求应该只是检索数据,并且不应对数据产生其他影响。
优点:比较便捷
缺点:由于是明文传输,所以安全性比较低,另外参数长度有限制。

post请求:POST请求通常是使用来提交HTML的表单,表单中的数据传输到服务器,由服务器对这些数据处理。我们平常执行登录操作的那一下基本上都是post请求。
关于get请求和post请求区别优缺点这里推荐一篇博文:http GET 和 POST 请求的优缺点、区别以及误区

下面说一下Headers中的Request Headers(请求头信息),

Accept:指定客户端能够接收的内容类型,图中text/html表示要请求返回文本格式的数据

Accept-Encoding:指定浏览器可以支持的web服务器返回内容压缩编码类型,图中gzip表示支持gzip格式的压缩文件

Accept-Language:浏览器可接受的语言 图中 zh-CN表示接受中文

Connection:表示是否需要持久连接。(HTTP 1.1默认进行持久连接)图中keep-alive意为保持长链接

Cookie:是服务器发送到浏览器并保存在本地的一小块数据,存储在header中,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上,通常,它用于告知服务端两个请求是否来自同一浏览器,如保持用户的登录状态。

Host:指定请求的服务器的域名和端口号,图中是www.baidu.com也就是我在地址栏中请求的网址

User-Agent:包含的是发出请求的用户信息,客户机的软件环境浏览器类型等

Response Header 和Request Headers对应,如下图

了解完这些呢,就来看下爬虫吧

关于爬虫

爬虫通俗来说,就是使用代码模拟用户,批量发送网络请求,批量的获取数据

爬虫的的分类

1.通用爬虫:搜索引擎的爬虫

优势:开放性很好,速度比较快

劣势:目标不明确,举个例子哈,例如我在百度搜索图片,搜索结果如下图,我想要的是图片,但是看下图红色方框所圈的内容并不是我们所要找的图片资源,这就是我所说[做运维的小年轻]的目标不明确,导致的结果呢就是返回的很多内容并不是用户所需要的。

2.聚焦爬虫:全称聚焦网络爬虫,又称为主题网络爬虫
优点:目标明确,对用户的需求非常精准,返回内容很固定,比如我就请求一张图片,那么就返回一张图片。

关于爬虫的分类其实在以后越来越深入的学习中,会自然而然的理解,现在只需有个大概了解就行了关于网络爬虫分类日百度百科中讲的比较详细,点击传送门去了解。

python爬虫之『入门基础』的更多相关文章

  1. 0.Python 爬虫之Scrapy入门实践指南(Scrapy基础知识)

    目录 0.0.Scrapy基础 0.1.Scrapy 框架图 0.2.Scrapy主要包括了以下组件: 0.3.Scrapy简单示例如下: 0.4.Scrapy运行流程如下: 0.5.还有什么? 0. ...

  2. 小白学 Python 爬虫(34):爬虫框架 Scrapy 入门基础(二)

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  3. 小白学 Python 爬虫(35):爬虫框架 Scrapy 入门基础(三) Selector 选择器

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  4. 小白学 Python 爬虫(36):爬虫框架 Scrapy 入门基础(四) Downloader Middleware

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  5. 小白学 Python 爬虫(37):爬虫框架 Scrapy 入门基础(五) Spider Middleware

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  6. 小白学 Python 爬虫(38):爬虫框架 Scrapy 入门基础(六) Item Pipeline

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  7. 小白学 Python 爬虫(40):爬虫框架 Scrapy 入门基础(七)对接 Selenium 实战

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  8. 小白学 Python 爬虫(41):爬虫框架 Scrapy 入门基础(八)对接 Splash 实战

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  9. Python爬虫的简单入门(一)

    Python爬虫的简单入门(一) 简介 这一系列教学是基于Python的爬虫教学在此之前请确保你的电脑已经成功安装了Python(本教程使用的是Python3).爬虫想要学的精通是有点难度的,尤其是遇 ...

随机推荐

  1. Highcharts 前端图表插件

    Highcharts 支持将图片下载成各种格式 Highcharts官网:https://www.hcharts.cn/download <div id="container" ...

  2. 学习Go语言之使用channel避免竞态问题

    // 使用channel避免竞态问题 package main import ( "fmt" "sync" ) var ( i int wg sync.Wait ...

  3. CF949C Data Center Maintenance(建图+强联通分量)

    题意 有 n 个信息中心,第 i 个信息中心要在第 ti 个小时维护,维护期间信息不能被获得. 每个用户的数据都有两份备份,第 i 个用户的数据放在信息中心 c(i,1) 和 c(i,2). 现在要挑 ...

  4. 端口扫描软件Nmap使用一(下载于安装)

    端口扫描软件Nmap使用一(下载于安装) Nmap的下载地址虽然很多,但是对于新手来说,尽量在官方网址下载,某些第三方下载网址很不人道,使用他们加速器的时候会绑定下载很多垃圾软件,会给我们造成很多不必 ...

  5. 在ubuntu上编译rasbian kernel(for raspberry pi 1)

    raspberry pi官网的编译手册写的简洁有力,照着操作即可 https://www.raspberrypi.org/documentation/linux/kernel/building.md ...

  6. CF 414B Mashmokh and ACM 动态规划

    题意: 给你两个数n和k.求满足以下条件的数列有多少个. 这个数列的长度是k: b[1], b[2], ……, b[k]. 并且 b[1] <= b[2] <= …… <= b[k] ...

  7. 题解 P2195 【HXY造公园】

    天哪这道题竟然只有一篇题解! emm,首先读题看完两个操作就已经有很明确的思路了,显然是并查集+树的直径 一波解决. 并查集不多说了,如果不了解的可以看这里. 树的直径的思路很朴实,就是两边DFS(B ...

  8. windows server 打开 FTP 服务器上的文件夹时发生错误。请检查是否有权限访问该文件夹。

    解决方案1: 打开高级安全windows防火墙,设置出入站规则. 然后,再打开windows防火墙界面,点击左上角“允许程序或功能通过windows防火墙”,勾选上设置的出入站名称和FTP服务器. 如 ...

  9. crm使用soap删除字段

    //C# 代码: //DeleteAttributeRequest request = new DeleteAttributeRequest(); //request.EntityLogicalNam ...

  10. 简单缓存Cache

    接口 interface ICache { /// <summary> /// 添加 /// </summary> /// <param name="key&q ...