爬虫学习笔记1:爬虫基本概念
本文目录
- 1平时我们接触到的爬虫
- 2对爬虫的概念
- 3通用爬虫和聚焦爬虫
- 4http和https协议
- 5浏览器中发送一个http请求的过程
- 6有关url
- 7一般的请求方法
- 8常见的状态响应码
1平时我们接触到的爬虫
搜索引擎(百度、谷歌、360搜索等)。
数据分析与研究。
抢票软件等。
2对爬虫的概念
通俗理解:爬虫程序是一个模拟人类请求网站行为的程序。它可以自动请求网页并捕获数据,然后使用某些规则提取有价值的数据
定义:网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。
3通用爬虫和聚焦爬虫
通用爬虫:通用爬虫是搜索引擎捕获系统(百度、谷歌、搜狗等)的重要组成部分。它主要将互联网上的网页下载到本地,形成互联网内容的镜像备份。
聚焦爬虫:这是一个针对特定需求的网络爬虫程序。它与普通爬虫的区别在于,焦点爬虫在实现网页捕获时会对内容进行过滤和处理,并尝试确保只捕获与需求相关的网页信息。
4http和https协议
HTTP(HyperText Transfer Protocol)协议:全称为超文本传输协议,中文为超文本传输协议。它是一种发布和接收HTML页面的方法。服务器端口号为端口80。HTTPS协议:它是HTTP协议的加密版本。SSL层添加在http下。服务器端口号为端口443。
5浏览器中发送一个http请求的过程
1当用户在浏览器的地址栏中输入URL并按enter键时,浏览器将向HTTP服务器发送HTTP请求。HTTP请求主要分为“get”和“post”方法。
2当我们在浏览器中输入URL时,浏览器发送请求以获取URL的HTML文件,服务器将响应文件对象发送回浏览器。
3.浏览器分析响应中的HTML,发现许多其他文件被引用,如图像、CSS和JS文件。浏览器将自动再次发送请求以获取图像、CSS文件或JS文件。
当所有文件下载成功后,网页将完全按照HTML语法结构显示。
6有关url
URL是Uniform Resource Locator的简写,统一资源定位符。 一个URL由以下几部分组成:
scheme://host:port/path/?query-string=xxx#anchor
- scheme:是访问的协议,一般为http或者https以及ftp等。
- host:主机名,域名,比如www.CSDN.com。
- port:端口号。当你访问一个网站的时候,浏览器默认使用80端口。
- path:查找路径。比如:www.CSDN.com/A/B,后面的A/B就是path。
- query-string:查询字符串,比如:www.CSDN.com/s?wd=python,后面的wd=python就是查询字符串。
- anchor:锚点,后台一般不用管,前端用来做页面定位的。
- 在浏览器中请求一个url,浏览器会对这个url进行一个编码。除英文字母,数字和部分符号外,其他的全部使用百分号+十六进制码值进行编码。
7一般的请求方法
在HTTP协议中,向服务器发送请求。数据分为三部分。第一个是将数据放在URL中,第二个是将数据放在body中(在post请求中),第三个是将数据放在头部(head)。以下是web爬虫中常用的一些请求头参数:
用户代理(User-Agent):浏览器名称。这通常用于网络爬虫。请求网页时,服务器可以通过此参数知道哪个浏览器发送了请求。如果我们通过爬虫发送请求,我们的用户代理(User-Agent)是python,它可以很容易地确定您的请求是具有反爬虫机制的网站的爬虫。因此,我们应该经常将该值设置为某些浏览器的值,以伪装我们的爬虫。
Referer:指示当前请求来自的URL。这也可以用作反爬虫技术。如果不是来自指定页面,则不会做出相关响应。
Cookie:HTTP协议是无状态的。也就是说,同一个人发送两个请求,而服务器无法知道这两个请求是否来自同一个人。因此,此时使用cookie作为标识。通常,如果你想成为一个只有在登录后才能访问的网站,你需要发送cookie信息。
8常见的状态响应码
200:请求正常,服务器返回数据正常。
301:永久重定向。例如,当您访问www.A.com时,您将被重定向到www.B.com。
302:临时重定向。例如,当您访问一个需要登录的页面,而此时您没有登录时,您将被重定向到登录页面。
400:在服务器上找不到请求的URL。换句话说,请求URL是错误的。
403:服务器拒绝访问,权限不足。
500:服务器内部错误。服务器上可能有错误。
爬虫学习笔记1:爬虫基本概念相关推荐
- python爬虫学习笔记-网络爬虫的三种数据解析方式
爬虫的分类 1.通用爬虫:通用爬虫是搜索引擎(Baidu.Google.Yahoo等)"抓取系统"的重要组成部分.主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份 ...
- Python爬虫学习笔记_DAY_23_Python爬虫之bs4解析的基本使用介绍【Python爬虫】
目录 I.bs4的介绍 II.bs4的安装 III.bs4的基本语法使用 p.s.高产量博主,点个关注
- Python爬虫学习笔记_DAY_32_Python爬虫之Excel表的读写【Python爬虫】
p.s.高产量博主,点个关注
- Python爬虫学习笔记_DAY_18_Python爬虫之handler处理器的使用【Python爬虫】
p.s.高产量博主,点个关注
- 爬虫学习笔记1(超级详细)
文章预览: 爬虫学习笔记 1 爬虫概念 2 爬虫作用 3 爬虫的分类 4 爬虫的流程 http协议复习 爬虫特别关注的请求头和响应头 常见的响应状态码 浏览器运行过程 如何查找数据 requests模 ...
- python爬虫学习笔记2模拟登录与数据库
前言 为了加入学校里面一个技术小组,我接受了写一个爬取学校网站通知公告的任务.这个任务比以前写的爬虫更难的地方在于,需要模拟登录才能获得页面,以及将得到的数据存入数据库. 本文按照日期来记录我完成任务 ...
- 爬虫学习笔记(十)—— Scrapy框架(五):下载中间件、用户/IP代理池、settings文件
一.下载中间件 下载中间件是一个用来hooks进Scrapy的request/response处理过程的框架. 它是一个轻量级的底层系统,用来全局修改scrapy的request和response. ...
- Python3 爬虫学习笔记 C18【爬虫框架 pyspider — 深入理解】
Python3 爬虫学习笔记第十八章 -- [爬虫框架 pyspider - 深入理解] 文章目录 [18.1]启动参数 [18.2]运行单个组件 [18.2.1]运行 Scheduler [18.2 ...
- Python3 爬虫学习笔记 C17【爬虫框架 pyspider — 基本使用】
Python3 爬虫学习笔记第十七章 -- [爬虫框架 pyspider - 基本使用] 文章目录 [17.1]初识 pyspider [17.2]使用 pyspider [17.2.1]主界面 [1 ...
- Python3 爬虫学习笔记 C16【数据储存系列 — Redis】
Python3 爬虫学习笔记第十六章 -- [数据储存系列 - Redis] 文章目录 [16.1]关于 Redis [16.2]使用 Redis [16.3]Key(键)操作 [16.4]Strin ...
最新文章
- 图像处理用到的最优化 降噪
- 一个好玩的 屏蔽别人审查元素F12 右键及其他复制粘贴等
- 捐赠赞助单页HTML模板
- 实例解读Docker Swarm
- 吴恩达|机器学习作业7.1.主成分分析(PCA)
- Lucene.Net 2.3.1开发介绍 —— 一、接触Lucene.Net
- rv1126 固件编译规则
- 遗传算法(一) 遗传算法的基本原理
- 08CMS之新建独立页面
- ArcGIS按属性选择多个地类
- Clustalx 多重序列比对图解教程(By Raindy)
- 圆的半径java_计算圆的半径
- 2015年9月 javaweb餐厅系统
- codeforces_946D_Timetable(分组背包)
- 鼠标悬停大小缩略图片切换_3D缩略图悬停效果
- 9 计算机键盘是一个______,一种计算机键盘专用的清洁装置专利_专利申请于2018-05-31_专利查询 - 天眼查...
- 要来了!国内安卓统一推送标准将于 今年3 月开启测试
- Java平台,标准版Oracle JDK 9中的新功能
- Android平台交叉编译流程
- 电路中的基础元件-无源晶振详谈