网页爬虫的本质

news2025/2/6 17:19:35

1.网页结构分析

 

 

提取其中一部分核心介绍 :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div class="item masonry-brick" style="position: absolute; top: 0px; left: 202px;">
    <img src="//270242aa339_s.jpg" style="height: 279px; display: block;" data-original="/a339_s.jpg" class="lazy"
         alt="野生绿头鸭图片">
    <div class="bot-div">
        <a class="name" href="/tupian/22121952142.htm" title="野生绿头鸭图片" target="_blank">野生绿头鸭图片</a>
    </div>
</div>
</body>
</html>

拿出其中最终要的一部分内容进行分析

  <a class="name" href="/tupian/22121952142.htm" title="野生绿头鸭图片" target="_blank">野生绿头鸭图片</a>

a标签里面的 :

  <a class="name" href="/tupian/22121952142.htm" title="野生绿头鸭图片" target="_blank">野生绿头鸭图片</a>

 其中下面的属性是属性1=“属性值2” 属性2=“属性值2

class="name"

href="/tupian/22121952142.htm"

title="野生绿头鸭图片"

target="_blank"

================================

野生绿头鸭图片

这个就是文本内容


<a 属性1=“属性值2” 属性2=“属性值2”>文本内容</a>

网页爬虫核心就是获取上面的几个内容,解决如何找到这个属性,以及如何获取属性的值的过程

上面是属性:

在简单介绍下元素的定位

<body>
<div class="item masonry-brick" style="position: absolute; top: 0px; left: 202px;">
    <img src="//270242aa339_s.jpg" style="height: 279px; display: block;" data-original="/a339_s.jpg" class="lazy"
         alt="野生绿头鸭图片">
    <div class="bot-div">
        <a class="name" href="/tupian/22121952142.htm" title="野生绿头鸭图片" target="_blank">野生绿头鸭图片</a>
    </div>
</div>
</body>


元素定位:

 我的需求就是找到这个页面的jpg图片的地址

img src="//270242aa339_s.jpg"

 定位1:按照一层层定位“/”

/body/div/img

 定位2:从任意位置一下定位过去“//”

//img[@属性名称=“属性值”” ]  属性定位


元素获取值:

1.获取/body/div/img的文本值就是

/body/div/img/text()  --获取到文本内容

2.获取元素的属性值:如获取img src="//270242aa339_s.jpg"中的src中的270242aa339_s.jpg内容

img src="//270242aa339_s.jpg"

//img/@src  就是可以获取到img的src内容

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/102871.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据管理篇之计算管理

第13章 计算管理 目的&#xff1a;降低计算资源的消耗&#xff0c;提高任务执行的性能&#xff0c;提升任务产出的时间。 1.系统优化 HBO HBO &#xff08;History-Based Optimizer&#xff0c;基于历史的优化&#xff09;是根据任务历史执行情况为任务分配更合理的资源&…

在霍格沃兹测试开发学社学习是种怎样的体验?

霍格沃兹我怎么了解到的 我是河北某二本院校软工专业的学生&#xff0c;大三开始学校来了很多宣讲和实训的公司&#xff0c;都是为我们以后的职业发展做参考。学校有软件测试课程&#xff0c;有一次老师无意提到了霍格沃兹测试开发学社举办的高校“火焰杯”知识竞赛&#xff0…

三角函数sin cos tan和弧度,度等定义及其相关

在此做一个温习及记录&#xff0c;做一个总结&#xff0c;免得到处找。 正弦、余弦和正切是 三角法 里的主要函数&#xff0c;它们是基于一个 直角三角形而建立的。 英文释义&#xff1a; 正弦 &#xff08;sine&#xff09;, 余弦 &#xff08;cosine&#xff09; 和 正切 &a…

毕业设计 单片机心率血氧健康监测手表 - 物联网 嵌入式

文章目录0 前言1 简介2 主要器件3 实现效果4 设计原理4.1 **硬件准备**4.2 **传感器和算法**5 部分核心代码5 最后0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&…

VRRP负载均衡模式配置实用吗?

在前面的文章中&#xff0c;我们知道了VRRP单备份组可以快速实现主备切换&#xff08;&#xff09;&#xff0c;轻轻松松将业务中断时间压缩到1秒钟以内&#xff1b;也对比测试了策略路由进行主备切换的过程&#xff08;&#xff09;&#xff0c;虽然能轻松实现主备设备之间的流…

计算机毕业设计php基本微信小程序的贵小团校园社团小程序

项目介绍 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代,贵小团校园社团小程序就是信息时代变革中的产物之一。 任何系统都要遵…

计算机毕业设计django基于Python在线酒店管理系统

项目介绍 21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,科学化的管理,使信息存储达到准确、快速、完善,并能提高工作管理效率,促进其发展。 论文主要是对在线…

Java面试--SpringBoot启动流程

一、SpringBoot是什么 SpringBoot 是依赖于 Spring 的&#xff0c;比起 Spring&#xff0c;除了拥有 Spring 的全部功能以外&#xff0c;SpringBoot 无需繁琐的 Xml 配置&#xff0c;这取决于它自身强大的自动装配功能&#xff1b;并且自身已嵌入Tomcat、Jetty 等 web 容器&am…

C. Another Array Problem(思维)

Problem - C - Codeforces 给你一个有n个整数的数组a。允许你对它进行以下操作&#xff0c;次数不限&#xff08;0次或更多&#xff09;。 选择2个指数i,j&#xff0c;其中1≤i<j≤n&#xff0c;用|ai-aj|替换所有i≤k≤j的ak。 打印最终数组中所有元素的最大和&#xff0c…

TensorFlow之回归模型-1

1 基本概念 回归模型 一个回归模型会生成一个数值类型的预测结果&#xff0c;而一个分类模型会生成一个分类类型的预测结果&#xff0c;例如&#xff0c;如下列举一些回归模型&#xff1a; 一个模型预测一个商品房的价格走向&#xff0c;例如&#xff0c;某个时间点的总体市场…

大一学生《Web编程基础》HTML实例网页代码 HTML+CSS+JS 黑色横排的个人主页作品

&#x1f389;精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业…

【MySQL】-事务以及隔离性问题

作者&#xff1a;学Java的冬瓜 博客主页&#xff1a;☀冬瓜的主页&#x1f319; 专栏&#xff1a;【MySQL】 分享&#xff1a;落霞与孤鹜齐飞&#xff0c;秋水共长天一色。——《滕王阁序》 主要内容&#xff1a;事务的概念&#xff0c;代码使用&#xff0c;事务的四大性质、隔…

Shell是运维人员必须掌握的技能

文章目录Shell是运维人员必须掌握的技能Shell、Python 和 Perl1) Perl 语言2) Python 语言3) ShellShell是运维人员必须掌握的技能 Linux 运维人员就是负责 Linux 服务器的运行和维护。随着互联网的爆发&#xff0c;Linux 运维在最近几年也迎来了春天&#xff0c;出现了大量的…

Stm32标准库函数4——BlueTooth采集串口AD数据发送给电脑或者单片机

#include "stm32f10x.h" //在该头文件中默认定义系统时钟为72M #include "delay.h" #include "sys.h" #include "usart.h" #include "adc.h" //将USB转串口模块的Txd引脚电平通过蓝牙模块传送到单片机Rxd&#xff1b;同时…

Linux编辑器-vim的使用

vi/vim的区别简单点来说&#xff0c;它们都是多模式编辑器&#xff0c;不同的是vim是vi的升级版本&#xff0c;它不仅兼容vi的所有指令&#xff0c;而且还有一些新的特性在里面。例如语法加亮&#xff0c;可视化操作不仅可以在终端运行&#xff0c;也可以运行于xwindow、 mac o…

Unity Addressables资源管理 分析器 AnalyzeRule

Addressables资源管理总目录 0.窗口位置 打开的窗口 1.Fixable Rules 可修复的规则 1.1 Check Duplicate Bundle Dependencies 检查重复的Bundle依赖项 此规则通过扫描所有使用BundledAssetGroupSchemas的组&#xff0c; 并投影asset组布局来检查可能冗余的asset。 …

微服务框架 SpringCloud微服务架构 微服务面试篇 54 微服务篇 54.6 Nacos与Eureka的区别有哪些?【服务发现】

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式&#xff0c;系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 微服务面试篇 文章目录微服务框架微服务面试篇54 微服务篇54.6 Nacos与Eureka的区别有哪些&#xff1f;【服务发现】54.6.1 Nacos 的服务拉取…

基于STM32单片机智能自动伸缩衣架雨滴重量光强温度检测伸缩速度可调-蓝牙版

实践制作DIY- GC0010-智能自动伸缩衣架 一、功能说明&#xff1a; 基于STM32单片机设计-智能自动伸缩衣架 功能介绍&#xff1a; 基于STM32F103C系列&#xff0c;LCD1602显示器&#xff0c;光敏电阻采集光强&#xff0c;雨滴传感器&#xff0c;ULN2003控制步进电机&#xff0…

【Redis实战专题】「技术提升系列」彻底分析探究Redission实现分布式锁的点点滴滴

Redission的简介 Redission 为 Redis 官网分布式解决方案 官网&#xff1a; Redisson: Redis Java client with features of In-Memory Data Grid 快速入门&#xff1a; https://github.com/redisson/redisson#quick-start github的Redission系列&#xff1a;https://github…

SpringCloud学习笔记——Eureka 和 Nacos注册

SpringCloud01 1.认识微服务 随着互联网行业的发展&#xff0c;对服务的要求也越来越高&#xff0c;服务架构也从单体架构逐渐演变为现在流行的微服务架构。这些架构之间有怎样的差别呢&#xff1f; 1.0.学习目标 了解微服务架构的优缺点 1.1.单体架构 单体架构&#xff…