博客
关于我
学习爬虫前需要知道的知识
阅读量:775 次
发布时间:2019-03-24

本文共 1224 字,大约阅读时间需要 4 分钟。

网络爬虫是什么?它是模拟浏览器发送网络请求并接收响应的程序,按特定规则抓取互联网信息。简单来说,只要浏览器能做的事情,爬虫都能做。

网络爬虫有哪些分类呢?主要有通用爬虫和聚焦爬虫。通用爬虫通常用于搜索引擎,而聚焦爬虫则专门针对特定网站抓取信息。

网络爬虫的工作流程包括:向起始URL发送请求并获取响应,对响应内容提取信息,解析中提取新的URL继续抓取,以及提取数据保存。这些步骤构成了爬虫的基础操作流程。

robots协议又称为robots.txt,它是网站为搜索引擎设置的ACEL,这些规则可以限制爬虫访问网站的某些页面。已知淘宝和其他大型平台都有自己的robots协议。

HTTP和HTTPS又称为超文本传输协议和安全超文本传输协议。HTTP默认端口80,HTTPS默认端口443。HTML和CSS等资源通常通过HTTP传输,而HTTPS通过SSL加密,适用于安全敏感的数据传输。

HTTP请求流程开始于浏览器通过DNS获取目标IP,然后向服务器发起HTTP请求。在响应中,浏览器会发现多个URL(如图片、文件等),根据这些URL继续发起子请求。这整个过程称为浏览器渲染。

URL地址格式由几个部分组成:scheme://host[:port]/path/…/[?query-string][#anchor]。其中scheme是协议(如http、https),host是服务器IP或域名,port是端口,path是路径,query-string是查询参数,anchor是页内跳转锚点。

在HTTP协议中,常见的请求方式包括GET、HEAD、POST、PUT、DELETE、CONNECT、OPTIONS和TRACE。每种方法的诚异性和适用场景不一。例如,GET用于获取数据,POST用于提交表单或文件上传,HEAD用于无响应内容获取标题信息。

HTTP请求添加常见的请求头,用于传递额外信息。例如,Cookie用于身份验证,User-Agent表示客户端类型,Referer记录跳转来源,Host指定访问服务器和端口。

HTTP响应格式包括状态行、消息报头、空行和响应正文。状态行开始于三位数字,如200表示成功,404表示资源不存在。常见的请求头如Location、Set-Cookie、Content-Type和Content-Length提供了响应的详细信息。

HTTP状态码分类为5种类型(1**、2**、3**、4**、5**),每种分类描述不同类错误或成功情况。例如,404错误提示资源不存在,500错误指向服务器内部错误。

HTTPS的作用是对数据进行加密,防止中间人攻击。它比HTTP安全但资源消耗更高。今天,HTTPS已接近主流,越来越多应用要求HTTPS支持。

HTTP与HTTPS的优缺点明显。HTTP性能优越但安全性差,HTTPS相反高安全性但资源占用大。当前,HTTPS已成为主流,现代应用普遍要求HTTPS接口支持。

转载地址:http://bhhkk.baihongyu.com/

你可能感兴趣的文章
python读取wav文件并播放[pyaudio/wave]
查看>>
python读取txt文件的行数
查看>>
Python 中内置的最大堆 API
查看>>
Python 中只有一个 True 和一个 False 对象吗?
查看>>
python读取mtcars数据集并实现以下操作_关于数据处理。。,Python交流,技术交流区,鱼C论坛 - Powered by Discuz!...
查看>>
Python 中多线程与多处理之间的区别
查看>>
Python 中如何使用 lambda 函数
查看>>
Python 中如何创建多行字符串?
查看>>
Python 中如何处理异常?
查看>>
Python 中如何实现列表的切片?
查看>>
Python 中如何实现字典的排序?
查看>>
Python 中常用的数据类型及相关操作详解
查看>>
python 中文乱码
查看>>
Python 中生成器与普通函数的区别
查看>>
Python 中的 *tuple 和 **dict 是什么意思?
查看>>
Python 中的 filter() 函数:筛选可迭代对象元素
查看>>
Python 中的 Pillow 不允许我打开图像(“超出限制“)
查看>>
Python 中的 threading 模块和 multiprocessing 模块有何区别?
查看>>
Python 中的 threading 模块和 multiprocessing 模块有何区别?
查看>>
Python 中的 Turtle 库详解
查看>>