爬虫介绍

article/2025/10/13 0:32:53

这里写目录标题

  • 1 爬虫介绍
    • 1.1 什么是爬虫
    • 1.2 爬虫的作用
    • 1.3 业界情况
    • 1.4 合法性
    • 1.5 反爬
    • 1.6 爬虫的本质
    • 1.7 爬虫的基本流程
    • 1.8 爬虫的基本手段
    • 1.9 为什么是python

1 爬虫介绍

1.1 什么是爬虫

爬虫更官方点的名字叫数据采集,英文一般称作spider
网络爬虫也叫网络蜘蛛,如果把互联网比喻成一个蜘蛛网,那么蜘蛛就是在网上爬来爬去的蜘蛛,
爬虫程序通过请求URL地址,根据响应的内容进行解析采集数据。
如果响应内容是HTML,分析其DOM树结构,进行DOM解析,或者是正则匹配。
如果响应内容是XML/JSON数据,则可以转换数据对象,然后对再对数据对象进行解析。
网络爬虫在本质上就是从互联网上爬取数据!
在这里插入图片描述
爬虫更官方点的名字叫数据采集,英文一般称作spider
网络爬虫也叫网络蜘蛛,如果把互联网比喻成一个蜘蛛网,那么蜘蛛就是在网上爬来爬去的蜘蛛,
爬虫程序通过请求URL地址,根据响应的内容进行解析采集数据。
如果响应内容是HTML,分析其DOM树结构,进行DOM解析,或者是正则匹配。
如果响应内容是XML/JSON数据,则可以转换数据对象,然后对再对数据对象进行解析。
网络爬虫在本质上就是从互联网上爬取数据!

1.2 爬虫的作用

现如今大数据时代已经到来,网络爬虫技术成为这个时代不可或缺的一部分,企业需要数据来分析
用户行为,来分析自己产品的不足之处,来分析竞争对手的信息等等
通过有效的爬虫手段批量的从互联网上采集数据,它不仅可以降低人工成本,还可以提高有效数据
量,给运营/销售部门以数据支撑,从而加快企业的产品发展。
在这里插入图片描述

1.3 业界情况

目前互联网产品竞争激烈,业界大部分公司都会使用爬虫技术对竞品产品的数据进行挖掘、采集和
大数据分析,这是商业竞争的必备手段,所以很多公司都设立了“爬虫工程师”的工作岗位。
在这里插入图片描述

1.4 合法性

爬虫是利用程序进行批量爬取网页上的公开信息,也就是前端显示的数据信息。因为信息是完全公
开的,所以是合法的。其实就像浏览器一样,浏览器是解析响应内容并渲染为页面,而爬虫是解析
响应内容并采集想要的数据再进行存储。
魔蝎被查
https://baijiahao.baidu.com/s?id=1643978804427289836&wfr=spider&for=pc
在这里插入图片描述

爬虫究竟是合法还是违法
一段代码导致200人公司被抓:https://www.cnblogs.com/ityouknow/p/11684770.html
爬虫究竟是合法还是违法:https://www.cnblogs.com/ityouknow/p/11697613.html
豆瓣rebots:https://www.douban.com/robots.txt
rebots文件告诉爬虫什么东西可以访问,什么东西不能访问
从rebots中还能获取网站地图:https://www.douban.com/sitemap_index.xml
在这里插入图片描述
在这里插入图片描述

1.5 反爬

爬虫很难完全的制止,道高一尺魔高一丈,这是一场没有硝烟的战争,即码农VS码农。反爬虫一些
手段如下所示:
(1)合法检测:请求校验(例如用请求头信息中的useragent属性来判断是否为一个浏览器,例
如用请求头信息中的referer属性来确定上一次的跳转页面等)。
(2)小黑屋:利用IP地址限制用户的请求频率,或者直接拦截(即封IP)。
(3)投毒:是反爬虫的最高境界,即可以不用拦截爬虫,因为拦截是一时的,而投毒则可以返
回虚假数据(即构造一个含有虚假数据的页面返回给你),可以误导竞品的决策。
(4)输入验证码:即判断当前的访问用户是一个真人还是一个爬虫机器人。
知乎有哪些有趣的反爬虫手段:https://www.zhihu.com/question/58342241
12306的验证码
在这里插入图片描述

1.6 爬虫的本质

爬虫的本质就是自动化的去模拟正常人类发起的网络请求,然后获取网络请求所返回的数据。 跟我
们人手动去点击一个连接,访问一个网页获取数据,并没有什么本质的区别。
在这里插入图片描述
在这里插入图片描述

1.7 爬虫的基本流程

爬虫的基本流程,如下所示:
(1)准备工作,通过浏览器查看分析目标网页,学习编程基础规范。
(2)获取数据,通过HTTP库向目标站点发起请求,请求可以包含额外的header等信息,如果服
务器能正常响应,会得到一个Response,便是所要获取的页面内容。
(3)解析内容,得到的内容可能是HTML,json等格式,可以使用页面解析库、正则表达式等进
行解析
(4)保存数据,保存形式多样,可以存为文本,也可以保存到数据库,或者保存特定格式的文

在这里插入图片描述

1.8 爬虫的基本手段

破解请求限制
请求头设置,如将请求头信息中的useragent属性设置为有效客户端。
根据实际情况,控制请求频率。
IP代理。
签名/加密参数从HTML/Cookie/JS分析。
破解登录授权
请求带上用户Cookie信息(身份认证信息)。
破解验证码
简单的验证码可以使用识图读验证码第三方库。
解析数据
HTML的DOM解析。
正则匹配,通过的正则表达式来匹配想要爬取的数据,如:有些数据不是在HTML标签里,而
是在HTML的标签的JS变量中。
使用第三方库解析HTML或DOM,例如使用类jQuery的库。
数据字符串。
正则匹配(根据情景使用)。
转成JSON/XML对象进行解析。

1.9 为什么是python

爬虫可以用各种语言写, C++, Java都可以, 为什么要Python?
首先用C++搞网络开发的例子不多。
Java侧重于Web开发。
Python这种稍严谨而流行库又非常多的语言, 都大大弱化了针对计算机运行速度而打造的特
性, 强化了为程序员容易思考而打造的特性。所以我们选择Python。
Python的优势
Python语法易学,容易上手。
社区活跃,实现方案多可参考。
各种功能包丰富。
少量代码即可完成强大功能。
在这里插入图片描述


http://chatgpt.dhexx.cn/article/Rre4vvA1.shtml

相关文章

pythonrequests爬虫外文文献_Python爬虫(一):爬虫介绍、Requests库介绍及实例-Go语言中文社区...

本文主要内容: 1.爬虫的相关概念。 2.Requsets库安装。 3.Requests库介绍。 4.爬取网页的通用代码框架。 1.爬虫相关概念。 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照…

Python网络爬虫(一)---urllib

什么是网络爬虫 网络爬虫英文可以叫crawler,也可以叫spider,简而言之就是利用计算机从网上抓取你所感兴趣的文件、图片、视频等。其实在大多数情况下,没有什么网络爬虫,我们也可以根据自己所需要的,通过浏览器从网上下…

python爬虫爬取英文考研词汇

这几天开始背诵考研单词,在网上查找英语考研必备词汇,发现都是长这样的: 每一页的点击太费时费力了。因此萌生了为什么不能用爬虫把单词爬下来保存在本地呢?说干咱就干。首先点开搜索中的某个网页,分析网页的结构,找到其中的规律。例如,我找的是跨考考研的网站: 这是…

python爬虫: 爬一个英语学习网站

爬虫的基本概念 关于爬虫的基本概念, 推荐博客https://xlzd.me/ 里面关于爬虫的介绍非常通俗易懂. 简单地说,在我们输入网址后到可以浏览网页,中间浏览器做了很多工作, 这里面涉及到两个概念: IP地址: IP地址是你在网络上的地址,大部分情况下…

可视化数据分析-基于JavaScript的d3实践学习

目录 一.svg简介 二.D3简介 D3功能来源 常用语法说明 三.d3可视化访问MySQL数据库 实现方法 四.具体用例实现 svg绘制直方图 svg绘制二叉树(以电影票房为例) D3进行数据可视化(链接数据库) D3绘制直方图​ D3绘制饼图…

Kindle产品评论数据分析---基于excel的分析过程

目录 业务背景 一)明确分析目的 二)数据采集 三)数据清洗 四)数据分析与构建模型 1、相关产品的评论数排名和平均评分反映的问题 2、各评论占比,推荐评论中好评占比 3、kindle相关产品随时间变化其评论数的变化…

数据挖掘HeartbeatClassification——数据分析

如同计算机视觉中一样,在训练目标识别的网络之前,会对图片进行预处理,如 裁切,旋转、放大缩小,以加强网络的泛化能力。在数据挖掘中,我们首先要做的就是对拥有的数据进行分析( 涉及到《概率论与数理分析》的…

javaScript数据可视化

文章目录 canvas画布介绍绘制线段起始点设置其他点设置(可以有多个)划线方法 属性填充线段颜色线段宽度线段例子 绘制矩形第一种方式:第二种方式矩形例子 绘制圆形圆形例子 清除画布清除例子 绘制文字属性 svg介绍:基本的svg元素例…

Python交互式数据分析报告框架:Dash

译者序 原文于2017年6月21日发布,时过半载,将这篇既不是教程,也不是新闻的产品发布稿做了一番翻译,为何?只因去年下半年的时候,用R语言的博哥和龙少有Shiny这样的框架可以开发交互式整合Web数据分析报告&am…

【数据可视化】免费开源BI工具 DataEase 之血缘关系分析

近期,DataEase 发布的版本 V1.8 版本中,在系统管理模块新增了血缘分析功能,可以支持对数据源、数据集、仪表板做关联分析,支持按表格查看和按关系图查看,并且在删除数据源、数据集时,也支持查看对应的血缘分…

数据分析与数据可视化的完成,需要了解一下这四款JS库

四款出色的JavaScript库,帮助大家更为轻松地完成数据分析与可视化工作,具体如下: Data-Driven-Documents (D3.js) 在讨论JavaScript数据分析时忽略掉Data-Driven-Documents (D3),就如同在谈论微软时忽略掉其操作系统 样。 Data-D…

数据挖掘之关联分析(实验展示以及源代码)

数据挖掘之关联分析 算法实现:Apriori算法和FP-growth 算法源代码 简单描述下,关联分析概念 关联分析概念主要参考下面的博文 原文:https://blog.csdn.net/qq_40587575/article/details/81022350 关联分析是从大量数据中发现项集之间有趣的…

【数据分析入门】python数据分析-探索性数据分析之多因子与对比分析可视化

文章目录 多因子与对比分析可视化理论基础假设检验与方差检验假设检验方差检验 相关系数:皮尔逊、斯皮尔曼回归:线性回归PCA与奇异值分解 代码实践交叉分析分组分析相关分析因子分析 总结代码实现 相关性线性回归PCA注意:sklearn中pca用的方法是奇异值分解的方法&am…

数据分析系列之挖掘建模

经过数据探索与数据预处理,得到了可以直接建模的数据,根据挖掘目标和数据形式可以建立分类与预测,聚类分析,关联规则,时序模式和偏差检测等模型,帮助企业提取数据中的商业价值. 分类与预测 对于之前的背景假设,餐饮企业会经常遇到如下问题: 如何基于菜品历史销售情况,以及节…

【大数据分析与挖掘】挖掘建模之关联分析

文章目录 一、关联规则1.1 常用的关联规则算法1.2 Apriori算法介绍1.2.1 关联规则与频繁项集1.2.2 Apriori算法的思想与性质1.2.3 Apriori算法的实现的两个过程1.2.4 Apriori算法的实现案例 一、关联规则 关联规则分析也成为购物篮分析,最早是为了发现超市销售数据…

Hands-on-data-analysis 动手数据分析

动手数据分析笔记 第一章 第一节 数据载入及初步观察 数据载入 df pd.read_csv(file_path)df2 pd.read_table(file_path)read_csv 函数 见CSDN 博客: https://blog.csdn.net/weixin_39175124/article/details/79434022 问:read_csv 和 read_table …

python数据分析-因子分析(转载)

python数据分析-因子分析(转载) (获取更多知识,前往前往我的wx ————公z号 (程式解说) 原文来自python数据分析-因子分析

ThreeJs 数据可视化学习扫盲

一:前言 数据可视化是一个跨领域的行业,其中包含了图形学、数学、视觉传达等专业领域。 下图罗列出了一个简单的学习方向。 二:可视化方案以及学习路线 目前采用的是比较成熟,社区活跃度更高的Three.js,它是一个开源…

数据处理以及Hive数据分析

数据处理以及Hive数据分析 一、pandas进行数据预处理【1】待处理的一部分数据【2】原始数据文件的格式说明【3】数据预处理要求【4】 处理完成的数据字段说明【5】 实验方法使用pandas进行数据预处理 【6】解析题意【7】代码展示(1)读取文件(…

Python交互式数据分析报告框架~Dash介绍

原文作者:Plotly,Chris Pamer 原文链接: https://link.jianshu.com/?thttps%3A%2F%2Fmedium.com%2F%40plotlygraphs%2Fintroducing-dash-5ecf7191b503 译者序:原文于2017年6月21日发布,时过半载,将这篇既不是教程…