位置: IT常识 - 正文

爬虫基本原理(爬虫基本原理有哪些)

编辑:rootadmin
爬虫基本原理 爬虫基本原理1.1获取网页1.1.1提取信息1.1.2保存数据1.2请求1.2.1 请求方法1.2.2 请求网址1.2.3 请求头1.2.4请求体1.3响应1.1获取网页

推荐整理分享爬虫基本原理(爬虫基本原理有哪些),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:爬虫基本原理是什么,爬虫基本原理有哪些,爬虫基本原理有哪些,爬虫基本原理图,爬虫原理的简单介绍,爬虫的基本原理,爬虫基本原理实验报告,爬虫基本原理实验报告,内容如对您有帮助,希望把文章链接给更多的朋友!

爬虫首先要做的工作就是获取网页,这里就是获取网页的源代码。源代码里包含了网页的部分有用信息,所以只要把源代码获取下来,就可以从中提取想要的信息了。

1.1.1提取信息

获取网页源代码后,接下来就是分析网页源代码,从中提取我们想要的数据。 另外,由于网页的结构有一定的规则,所以还有一些根据网页节点属性、cSS 选择器或 XPath 来提取网页信息的库,如 Beautifulsoup、pyquery、lxml等。使用这些库,我们可以高效快速地从中提取网页信息,如节点的属性、文本值等。 提取信息是爬虫非常重要的部分,它可以使杂乱的数据变得条理清晰,以便我们后续处理和分析数据。

1.1.2保存数据

提取信息后,我们一般会将提取到的数据保存到某处以便后续使用。这里保存形式有多种多样,如可以简单保存为TXT文本或了SON文本,也可以保存到数据库,如 MysQL和 MongoDB等,也可保存至远程服务器,如借助 SFTP进行操作等。

向起始url发送请求,并获取响应对响应进行提取如果提取url,则继续发送请求获取响应如果提取数据,则将数据进行保存1.2请求爬虫基本原理(爬虫基本原理有哪些)

请求由客户端向服务端发出,可以分为四个内容:请求方法、请求的网址、请求头、请求体。

1.2.1 请求方法

GET:请求页面,并返回页面内容 HEAD:类似于GET请求,只不过返回的响应中没有具体的内容,用于获取报头 POST:大多用于提交表单或上传文件,数据包含在请求体中 PUT:从客户端向服务器传送的数据取代指定文档中的内容 DELETE:请求服务器删除指定的页面 CONNECT:把服务器当作跳板,让服务器代替客户端访问其他网页 OPTIONS:允许客户端查看服务器的性能 TRACE:回显服务器收到的请求,主要用于测试或诊断

1.2.2 请求网址

请求的网址,即统一资源定位符URL,它可以唯一确定我们想请求的资源。 https://www.baidu.com/s?wd=python https表示协议 www.baidu.com表示域名 s表示路径 wd=python表示查询参数

1.2.3 请求头

右键页面,检查,网络,然后点XHR,刷新页面,然后点击“headers”,找到请求标头。 接下来解释每一行都代表什么: :Authority::请求的目标服务器的主机名或IP地址,这里是api.bilibili.com。 :Method::HTTP请求方法。这里是GET,表示获取资源。 :Path::请求的路径。这里是/x/web-interface/cdn/report?from=report。 :Scheme::请求的协议方案。这里是https,表示使用HTTPS协议进行通信。 Accept::客户端可接受的响应内容类型。这里是*/*,表示接受任意类型的响应。 Accept-Encoding::客户端可接受的响应内容编码方式。这里是gzip, deflate, br,表示支持gzip、deflate和br(Brotli)压缩方式。 Accept-Language::客户端可接受的语言类型。这里是zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7,表示首选中文(中国大陆), 其次中文, 最后英文(美国)。 Cache-Control::控制缓存行为的指令,这里是no-cache,表示不使用缓存。 Origin::指定请求的来源,这里是https://www.bilibili.com。 Pragma::与缓存相关的指令,这里是no-cache,表示不使用缓存。 Referer::指定请求的来源页面或链接地址,这里是https://www.bilibili.com/。 Sec-Ch-Ua::指定浏览器的User-Agent字符串,表示浏览器及其版本信息。 Sec-Ch-Ua-Mobile::指定浏览器是否是移动版。 Sec-Ch-Ua-Platform::指定浏览器运行的平台,这里是Windows。 Sec-Fetch-Dest::指定请求的资源类型,这里是empty,表示空资源。 Sec-Fetch-Mode::指定请求的模式,这里是cors,表示使用CORS(跨源资源共享)请求。 Sec-Fetch-Site::指定请求的站点类型,这里是same-site,表示同源站点。 User-Agent::浏览器或客户端的用户代理标识,用于标识客户端的软件和版本信息。这里是Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36,表示使用的是Windows操作系统下的Chrome浏览器。

1.2.4请求体

请求体一般承载的内容是POST请求中的表单数据,但是对于GET请求,请求体为空。 先找到请求方法为POST的页面: 然后在载荷中找到相应的表单数据: 表单数据代表了每次进行访问所需要带的请求参数。

如果是GET请求带了载荷的话,那都会在URL中进行体现,比如:

可以发现,Payload中的report参数在请求的URL中体现了出来。

1.3响应

响应的状态码在头部就可以看到,以下是相应状态码及其解释:

1xx(信息性状态码):表示请求已被接收,需要进一步处理。 100 Continue:服务器已接收到请求的起始部分,客户端应继续发送剩余的请求。 101 Switching Protocols:服务器将按照客户端请求的协议切换。2xx(成功状态码):表示请求已成功处理并得到响应。 200 OK:请求成功,正常返回结果。 201 Created:请求成功,并在服务器上创建了新的资源。 204 No Content:请求成功,但响应中不包含实体的主体部分。3xx(重定向状态码):表示需要进一步操作以完成请求。 301 Moved Permanently:请求的资源已永久移动到新位置。 302 Found:请求的资源临时移动到不同的位置。 304 Not Modified:客户端的缓存资源是最新的,不需要重新传输。4xx(客户端错误状态码):表示请求包含错误或无法完成请求。 400 Bad Request:请求无效,服务器无法理解。 401 Unauthorized:请求需要身份验证。 403 Forbidden:服务器拒绝访问请求的资源。5xx(服务器错误状态码):表示服务器无法完成请求。 500 Internal Server Error:服务器遇到了意外错误,无法完成请求。 502 Bad Gateway:作为代理或网关的服务器收到无效响应。 503 Service Unavailable:服务器暂时无法处理请求,通常是由于过载或维护。
本文链接地址:https://www.jiuchutong.com/zhishi/299011.html 转载请保留说明!

上一篇:ChatGPT全面升级,GPT4支持多模态数据。

下一篇:微信小程序--》小程序—全局数据共享和分包(微信小程序开发一个多少钱)

  • iphone13无线充电多少w(iphone13无线充电在哪打开)

    iphone13无线充电多少w(iphone13无线充电在哪打开)

  • 菜鸟驿站怎么查快递(菜鸟驿站怎么查看附近的驿站)

    菜鸟驿站怎么查快递(菜鸟驿站怎么查看附近的驿站)

  • p30功能介绍(p30pro全部功能说明)

    p30功能介绍(p30pro全部功能说明)

  • 深圳有5g网络吗(深圳市有5g信号了吗)

    深圳有5g网络吗(深圳市有5g信号了吗)

  • 秘乐短视频能注销账号吗(秘乐短视频注册有风险吗)

    秘乐短视频能注销账号吗(秘乐短视频注册有风险吗)

  • 淘宝尾款有时间限制吗(淘宝尾款有时间期限吗)

    淘宝尾款有时间限制吗(淘宝尾款有时间期限吗)

  • 为什么qq有消息不响(为什么QQ有消息不弹出来)

    为什么qq有消息不响(为什么QQ有消息不弹出来)

  • ios系统无法检查更新(ios无法检查更新怎么办)

    ios系统无法检查更新(ios无法检查更新怎么办)

  • qq一起编辑文档怎么取消(QQ一起编辑文档选项变成代码量)

    qq一起编辑文档怎么取消(QQ一起编辑文档选项变成代码量)

  • 手机充电充一晚上对手机会有危害吗?(手机充电充一晚上没事吧)

    手机充电充一晚上对手机会有危害吗?(手机充电充一晚上没事吧)

  • 抖音上的回关是什么意思(抖音回关是什么)

    抖音上的回关是什么意思(抖音回关是什么)

  • 爱奇艺的电视剧怎么下载到手机上(爱奇艺的电视剧怎么保存到相册)

    爱奇艺的电视剧怎么下载到手机上(爱奇艺的电视剧怎么保存到相册)

  • 局域网三种典型拓扑(局域网的三个主要技术)

    局域网三种典型拓扑(局域网的三个主要技术)

  • 抖音里面隐藏的无效视频什么意思(抖音里面隐藏的视频过后能删掉吗)

    抖音里面隐藏的无效视频什么意思(抖音里面隐藏的视频过后能删掉吗)

  • 华为荣耀9x手机支持快充吗(华为荣耀9x手机怎么样)

    华为荣耀9x手机支持快充吗(华为荣耀9x手机怎么样)

  • 微信消息显示在屏幕显示(微信消息显示在屏幕顶端)

    微信消息显示在屏幕显示(微信消息显示在屏幕顶端)

  • OPPO k5怎么打开usb调试(oppok5手机怎样打开usb接口)

    OPPO k5怎么打开usb调试(oppok5手机怎样打开usb接口)

  • maral00是华为什么型号(mar aloo华为什么型号)

    maral00是华为什么型号(mar aloo华为什么型号)

  • 怎样删苹果内存的其他(怎样删苹果内存数据)

    怎样删苹果内存的其他(怎样删苹果内存数据)

  • 淘宝查号指的什么(淘宝查号啥意思)

    淘宝查号指的什么(淘宝查号啥意思)

  • 苹果7p相机怎么调专业模式(苹果7p相机怎么设置拍照效果最好)

    苹果7p相机怎么调专业模式(苹果7p相机怎么设置拍照效果最好)

  • 微信收款商业版和个人版可以同时用吗(微信收款商业版和个人收款码区别)

    微信收款商业版和个人版可以同时用吗(微信收款商业版和个人收款码区别)

  • 华为游戏加速模式在哪(华为游戏加速模式怎么设置)

    华为游戏加速模式在哪(华为游戏加速模式怎么设置)

  • 爱奇艺如何退出登录(爱奇艺如何退出电视端登录)

    爱奇艺如何退出登录(爱奇艺如何退出电视端登录)

  • 微视如何去掉水印(微视怎么去掉微视水印)

    微视如何去掉水印(微视怎么去掉微视水印)

  • 如何让网速限制解除呢?有什么方法吗?(网速怎么限制10mb以内)

    如何让网速限制解除呢?有什么方法吗?(网速怎么限制10mb以内)

  • 专项扣除子女教育大学生可以吗
  • 企业的承兑汇票贴息很高说明什么
  • 蓝字发票和红字一样吗
  • 维修汽车费用
  • 资产损失原因
  • 补充医疗保险能自己交吗
  • 定率征收多缴的企业所得税怎么计算?
  • 固定基金会计分录怎么处理
  • 增值税普通发票有什么用
  • 勾选认证的发票怎么确认签名
  • 把股份转给别人怎么处理
  • 审计的内容是什么
  • 即征即退收入是否计入三免三减半所得
  • 住宿服务可以开免税吗
  • 税务局增项
  • 汇回投资方的现值怎么算
  • 腾讯电脑管家中蓝牙在哪
  • xp系统咋样
  • mac符号在哪里
  • 汇算清缴工资薪金支出包含社保费吗
  • 复制粘贴快捷键失效了怎么回事
  • windows 7怎么打开虚拟化
  • 高新技术企业研发费用归集
  • 如何预防电脑系统崩溃
  • vue引入echarts柱状图
  • 对账小技巧
  • nyu数据集
  • vue使用jquery
  • laravel insert ignore
  • php.ini详解
  • 详解php处理字符的方法
  • 我国的增值税是价外税消费税是价内税
  • php生成二维码海报
  • php实现验证码
  • 出口发票的开具时间问题
  • vue项目启动过程
  • ICLR‘23 UnderReview | LightGCL: 简单而有效的图对比学习推荐系统
  • php实现当前页面的快捷键
  • 小企业会计准则没有以前年度损益调整科目
  • 史上伟大电影
  • 资产负债表的负债项目显示了企业所负担债务的
  • 筹建期所得税年度申报如何填列
  • 新政府会计制度下的基建会计
  • 四联发票都需要盖章吗
  • 如何确认固定资产的减值
  • 收到退回的文化事业建设费会计分录
  • 公司向法人借款会计分录
  • 个体工商户缴纳社保属于职工社保吗
  • 从基本存款账户划款3万元 向开户银行转帐
  • 登记银行存款日记账的实训心得
  • MySQL:Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEM
  • 如何解开win10电脑密码
  • solaris 安装
  • os x yosemite wifi断线怎么办?yosemite wifi掉线解决详细步骤
  • win10桌面底部
  • centos7 ip命令
  • linux的free命令详解
  • linux命令怎么用
  • linux执行sh文件显示不存在
  • win7 64位旗舰版如何实现快速删除U盘?win7快速删除U盘的设置方法
  • win8如何进入bios
  • win8如何输入命令
  • win8的桌面文件在哪里
  • extjs 为某个事件设置拦截器
  • Unity3D游戏开发培训课程大纲
  • bat查看ip地址和mac地址
  • es5 教程
  • js 文件分割
  • android dsl动态化
  • 你应该知道的几个问题
  • linux查看shell脚本
  • html里的标签
  • jQuery EasyUI Tab 选项卡问题小结
  • High Level Networking Concepts
  • 外经证办理流程在哪个网站申请
  • 上期留底税额怎么查
  • 国税地税征管体制改革方案全文
  • 一般纳税人每月开票金额有限额吗
  • 江苏契税补贴怎么领取
  • 环保信用评价等级分级情况
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设