爬虫剑谱第三页(网课笔记)

2023-10-22 11:50

本文主要是介绍爬虫剑谱第三页(网课笔记),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

什么是http和https协议?
http协议:
超文本传输协议,一种发布和接收HTML页面的方法。服务器端口号是80端口
HTTPS协议:
是http协议的加密版本,在http下加入了ssl层。服务器端口号是443端口
(ssl层:SSL(Secure Socket Layer 安全套接层)是基于HTTPS下的一个协议加密层)
在浏览器中发送一个http请求的过程:
1.当用户在浏览器的地址中输入一个URl并按回车键之后,浏览器会向http服务器发送http请求。http请求主要分为get和post两种方法
2.当我们在浏览器中输入URL(网址)的时候,浏览器会发送Request请求去获取(网址)的HTML文件,服务器吧Request文件对象发送回浏览器
3.浏览器分析Request中的HTML,发现其中引用了很多其他文件,浏览器会自动再次发送Request去获取图片,css文件
4.当所有的文件都下载成功后,网页会根据HTML语法结构,完成的显示出来

 

URL详解:
URL (Uniform Request Locator)的简写
URL的组成部分
scheme://host:port/path/?query-string=xxx#anchor
scheme:
代表访问的协议,一般为http以及ftp等
host:
主机口,域名
port:
端口号。当访问一个网站的时候,浏览器默认使用80端口
path:
查找路径
query-string:
查询字符串
anchor:
锚点,前端用来做页面定位的
在浏览器中请求一个url,浏览器会给这这个url一个编码,除英文字母,数字和部分符号外,其他的全部使用百分号+十六进制码值进行编码
常用的请求方法:
http协议中,定义了八种方法,常用的是get请求和post请求
1.get请求:
一般情况下,只从服务器获取数据下载,并不会对服务器资源产生任何影响的时候使用get请求
2.post请求:
想服务器发送数据(登录),上传文件等会对服务器资源产生影响的时候会使用post请求。
请求头常见参数:
在http协议中,向服务器发送一个请求,数据分为三部分,第一个是把数据放在url中,第二个是把数据放在body中,第三个是把数据放在head中
常见:
1.User-Agent:
浏览器名称,服务器通过这个参数可以知道这个请求是由哪种服务器发送的,通过这个值来伪装爬虫
2.Referer:
表名当前这个请求是从那个url过来的。一般可以用作反爬技术
3.Cookie:
http协议是无状态的,也就是一个人发送了两次请求,服务器没有能力知道这两个请求是否来自同一个人,此时就用Cookie来做标识,一般想要做登录后才能访问的网站,那么就需要发送Cookie信息

 

常见响应状态码:
1.200:请求正常,服务器正常的返回数据
2.301:永久重定向。
3.302:临时重定向。比如在访问一个录取登录页面的时候,而此时没有登录,那么就会重定向到登录页面
4.400:请求的url在服务器上找不到。请求的url错误
5.403:服务器拒绝访问,权限不够
6.500:服务器内部错误,可能是服务器出现bug
chrome抓包工具:
chrome浏览器,可以方便的查看网络请求以及发送的参数

这篇关于爬虫剑谱第三页(网课笔记)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/261262

相关文章

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

Python3 BeautifulSoup爬虫 POJ自动提交

POJ 提交代码采用Base64加密方式 import http.cookiejarimport loggingimport urllib.parseimport urllib.requestimport base64from bs4 import BeautifulSoupfrom submitcode import SubmitCodeclass SubmitPoj():de

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit

记录每次更新到仓库 —— Git 学习笔记 10

记录每次更新到仓库 文章目录 文件的状态三个区域检查当前文件状态跟踪新文件取消跟踪(un-tracking)文件重新跟踪(re-tracking)文件暂存已修改文件忽略某些文件查看已暂存和未暂存的修改提交更新跳过暂存区删除文件移动文件参考资料 咱们接着很多天以前的 取得Git仓库 这篇文章继续说。 文件的状态 不管是通过哪种方法,现在我们已经有了一个仓库,并从这个仓

忽略某些文件 —— Git 学习笔记 05

忽略某些文件 忽略某些文件 通过.gitignore文件其他规则源如何选择规则源参考资料 对于某些文件,我们不希望把它们纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。通常它们都是些自动生成的文件,比如日志文件、编译过程中创建的临时文件等。 通过.gitignore文件 假设我们要忽略 lib.a 文件,那我们可以在 lib.a 所在目录下创建一个名为 .gi

取得 Git 仓库 —— Git 学习笔记 04

取得 Git 仓库 —— Git 学习笔记 04 我认为, Git 的学习分为两大块:一是工作区、索引、本地版本库之间的交互;二是本地版本库和远程版本库之间的交互。第一块是基础,第二块是难点。 下面,我们就围绕着第一部分内容来学习,先不考虑远程仓库,只考虑本地仓库。 怎样取得项目的 Git 仓库? 有两种取得 Git 项目仓库的方法。第一种是在本地创建一个新的仓库,第二种是把其他地方的某个