Python从0到100(三十三):xpath和lxml类库

在这里插入图片描述

1. 为什么要学习xpath和lxml

lxml是一款高性能的 Python HTML/XML 解析器,我们可以利用XPath,来快速的定位特定元素以及获取节点信息

2. 什么是xpath

XPath,全称为XML Path Language,是一种用于在XML文档中进行导航和数据提取的语言,可用来在 HTML\XML 文档中对元素和属性进行遍历

W3School官方文档:http://www.w3school.com.cn/xpath/index.asp

3. 认识xml

知识点:

  • html和xml的区别
  • xml中各个元素的的关系和属性

3.1 html和xml的区别

HTML(HyperText Markup Language)和XML(eXtensible Markup Language)都是用于描述数据的标记语言,但它们之间存在一些关键的区别:

  1. 目的

    • HTML:设计用来创建和展示网页内容。
    • XML:设计用来存储和传输数据,不定义数据的显示方式。
  2. 标准性

    • HTML:有固定的标签集,如<p><div><a>等。
    • XML:允许用户定义自己的标签,提供了极大的灵活性。
  3. 结构性

    • HTML:结构相对宽松,某些标签可以不闭合或不严格遵守嵌套规则。
    • XML:非常严格,所有标签必须正确闭合,并且必须正确嵌套。
  4. 数据表示

    • HTML:主要用于展示数据,不关注数据的结构和语义。
    • XML:强调数据的结构和语义,适合数据的存储和交换。
  5. 样式和行为

    • HTML:可以内嵌CSS和JavaScript来控制样式和行为。
    • XML:不包含样式和行为的定义,通常需要与XSL(eXtensible Stylesheet Language)或XSLT(eXtensible Stylesheet Language Transformations)结合使用来定义样式和转换数据。
  6. 错误容忍度

    • HTML:浏览器对HTML的错误相对宽容,即使某些标签使用不当,页面仍可能显示。
    • XML:对错误非常敏感,如果XML文档格式有误,通常无法被正确解析。
  7. 文档类型

    • HTML:通常不需要文档类型声明(DOCTYPE)或可以有简化的声明。
    • XML:每个XML文档都需要一个文档类型声明来指示使用的是XML。
  8. 应用范围

    • HTML:主要用于网页设计和开发。
    • XML:应用范围广泛,包括配置文件、数据交换格式、RSS feeds等。
  9. 命名空间

    • HTML:不支持命名空间。
    • XML:支持命名空间,有助于解决不同XML文档中标签名称冲突的问题。
  10. 扩展性

    • HTML:扩展性有限,受限于其固定的标签集。
    • XML:高度可扩展,用户可以根据需要创建新的标签和属性。

尽管HTML和XML在某些方面相似,但它们的设计目标和使用方式有着根本的不同。HTML专注于网页内容的展示,而XML则是一种更为通用的数据交换格式。

3.2 xml的树结构

<bookstore>
<book category="COOKING"><title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> 
</book>
<book category="CHILDREN"><title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> 
</book>
<book category="WEB"><title lang="en">Learning XML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> 
</book>
</bookstore>

4. xpath的节点关系

知识点:

  • 认识xpath中的节点
  • 了解xpath中节点之间的关系

4.1 xpath中的节点是什么

每个XML的标签我们都称之为节点,其中最顶层的节点称为根节点。

XPath(XML Path Language)是一种用于在XML文档中进行导航的语言,它允许你选择节点或节点集,并对它们进行操作。在XPath中,节点是文档结构的基本单元,包括以下几种类型:

  1. 元素节点:XML文档中的标签,如<book><title>等。
  2. 属性节点:元素的属性,如<book lang="English">中的lang="English"
  3. 文本节点:元素内的文本内容,如<name>John Doe</name>中的John Doe
  4. 命名空间节点:XML文档中的命名空间声明。
  5. 处理指令节点:XML文档中的处理指令,如<?xml-stylesheet type="text/xsl" href="style.xsl"?>
  6. 注释节点:XML文档中的注释部分。
  7. 根节点:XML文档的根元素,它是所有其他节点的父节点。

4.2 xpath中节点的关系

在XPath中,节点之间的关系可以描述如下:

  • 父节点:一个节点的直接上级节点。例如,在<parent><child/></parent>中,<parent><child>的父节点。
  • 子节点:一个节点的直接下级节点。在上述例子中,<child><parent>的子节点。
  • 兄弟节点:具有相同父节点的节点。例如,在<parent><child1/><child2/></parent>中,<child1><child2>互为兄弟节点。
  • 祖先节点:从当前节点向上直到根节点的所有节点。例如,在<grandparent><parent><child/></parent></grandparent>中,<grandparent><parent>都是<child>的祖先节点。
  • 后代节点:从当前节点向下直到最后一个子节点的所有节点。在上述例子中,<child><grandparent><parent>的后代节点。
  • 前序节点:包括当前节点及其所有祖先节点。
  • 后序节点:包括当前节点及其所有后代节点。
  • :XPath中用于描述节点之间关系的术语,如子轴(child axis)、父轴(parent axis)、祖先轴(ancestor axis)和后代轴(descendant axis)等。

XPath提供了丰富的路径表达式和函数,允许用户根据这些节点关系来选择和操作XML文档中的特定部分。例如,使用//可以选取文档中的所有后代节点,无论它们位于文档的哪个位置。使用/可以选取根节点的子节点,而.代表当前节点。

5. xpath中节点选择的工具

  • Chrome插件 XPath Helper
    • 下载地址:https://pan.baidu.com/s/1UM94dcwgus4SgECuoJ-Jcg 密码:337b
    • 把文件的后缀名crx改为rar,然后解压到xpath_…
    • 把解压后的文件夹拖入到已经开启开发者模式的chrome浏览器扩展程序界面
    • 重启浏览器
  • Firefox插件 XPath Checker

注意:
这些工具是用来学习xpath语法的,他们都是从elements中匹配数据,elements中的数据和url地址对应的响应不相同,所以在代码中,不建议使用这些工具进行数据的提取

6. xpath语法

知识点

  • 掌握元素路径的相关方法
  • 掌握获取获取属性的方法
  • 掌握获取文本的方法

我们将在下面的例子中使用这个 XML 文档。

<bookstore><book><title lang="eng">Harry Potter</title><price>29.99</price>
</book><book><title lang="eng">Learning XML</title><price>39.95</price>
</book></bookstore>

6.1 选取节点

XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。

使用chrome插件选择标签时候,选中时,选中的标签会添加属性class=“xh-highlight”

下面列出了最有用的表达式:

表达式描述
nodename选中该元素。
/从根节点选取、或者是元素和元素间的过渡。
//从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
.选取当前节点。
选取当前节点的父节点。
@选取属性。
text()选取文本。

实例

在下面的表格中,我们已列出了一些路径表达式以及表达式的结果:

路径表达式结果
bookstore选择bookstore元素。
/bookstore选取根元素 bookstore。注释:假如路径起始于正斜杠( / ),则此路径始终代表到某元素的绝对路径!
bookstore/book选取属于 bookstore 的子元素的所有 book 元素。
//book选取所有 book 子元素,而不管它们在文档中的位置。
bookstore//book选择属于 bookstore 元素的后代的所有 book 元素,而不管它们位于 bookstore 之下的什么位置。
//book/title/@lang选择所有的book下面的title中的lang属性的值。
//book/title/text()选择所有的book下面的title的文本。

xpath基础语法练习:

接下来我们听过豆瓣电影top250的页面来练习上述语法

https://movie.douban.com/top250

  • 选择所有的h1下的文本
    • //h1/text()
  • 获取所有的a标签的href
    • //a/@href
  • 获取html下的head下的title的文本
    • /html/head/title/text()
  • 获取html下的head下的link标签的href
    • /html/head/link/@href

但是当我们需要选择所有的电影名称的时候会特别费力,通过下一小节的学习,就能够解决这个问题

6.2 查找特定的节点

路径表达式结果
//title[@lang=“eng”]选择lang属性值为eng的所有title元素
/bookstore/book[1]选取属于 bookstore 子元素的第一个 book 元素。
/bookstore/book[last()]选取属于 bookstore 子元素的最后一个 book 元素。
/bookstore/book[last()-1]选取属于 bookstore 子元素的倒数第二个 book 元素。
/bookstore/book[position()>1]选择bookstore下面的book元素,从第二个开始选择
//book/title[text()=‘Harry Potter’]选择所有book下的title元素,仅仅选择文本为Harry Potter的title元素
/bookstore/book[price>35.00]/title选取 bookstore 元素中的 book 元素的所有 title 元素,且其中的 price 元素的值须大于 35.00。

注意点:
在xpath中,第一个元素的位置是1,最后一个元素的位置是last(),倒数第二个是last()-1

6.3 选取未知节点

XPath 通配符可用来选取未知的 XML 元素。

通配符描述
*匹配任何元素节点。
@*匹配任何属性节点。
node()匹配任何类型的节点。

实例

在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:

路径表达式结果
/bookstore/*选取 bookstore 元素的所有子元素。
//*选取文档中的所有元素。
//title[@*]选取所有带有属性的 title 元素。

6.3 选取若干路径

通过在路径表达式中使用“|”运算符,您可以选取若干个路径。

实例

在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:

路径表达式结果
//book/title | //book/price选取 book 元素的所有 title 和 price 元素。
//title | //price选取文档中的所有 title 和 price 元素。
/bookstore/book/title | //price选取属于 bookstore 元素的 book 元素的所有 title 元素,以及文档中所有的 price 元素。

小结

  1. xpath的概述XPath (XML Path Language),解析查找提取信息的语言
  2. xml是和服务器交互的数据格式和json的作用一致
  3. html是浏览器解析标签数据显示给用户
  4. xpath的节点关系:根节点,子节点,父节点,兄弟节点,子节点,后代节点
  5. xpath的重点语法获取任意节点://
  6. xpath的重点语法根据属性获取节点:标签[@属性 = '值']
  7. xpath的获取节点属性值:@属性值
  8. xpath的获取节点文本值:text()

好书推荐

《AI绘画与摄影实战108招:ChatGPT+Midjourney+文心一格》
在这里插入图片描述
《AI绘画与摄影实战108招:ChatGPT Midjourney 文心一格》通过10个专题内容、108个实用技巧、120多分钟教学视频,讲解了AI绘画与摄影的相关知识,随书附赠了108集同步教学视频、50多个素材效果、260多个书中案例关键词、5200个绘画关键词等。具体内容按以下两条线展开。
一是技能线:详细讲解了ChatGPT关键词的挖掘方法、文心一格的绘画技巧、常见的AI构图与光线色调指令、Midjourney常用的绘图指令,以及AI绘图的4种方法。
二是案例线:介绍了人物摄影、动物摄影、植物摄影、建筑摄影、慢门摄影、星空摄影、航拍摄影、全景摄影、风光摄影、人文摄影、产品摄影、时尚摄影等多种热门摄影的知识。
本书由浅入深,以实战为核心,既适合摄影师、绘画爱好者、设计师、插画师、漫画家、电商商家、艺术工作者等阅读,又可作为相关院校的教材。

购买链接:https://product.dangdang.com/29723004.html

编辑推荐

高效绘图! 10章核心内容,ChatGPT结合Midjourney与文心一格,实现AI全方位作品生成!
实战案例! 50多个素材效果+108招干货技巧+260多个指令关键词 5200款绘画关键词,实操实练,秒变AI绘画高手!
视频教学! 赠送108集教学视频,扫描二维码可随时随地全程查看操作过程,让学习更轻松!

内容简介

《AI绘画与摄影实战108招:ChatGPT Midjourney 文心一格》通过10个专题内容、108个实用技巧、120多分钟教学视频,讲解了AI绘画与摄影的相关知识,随书附赠了108集同步教学视频、50多个素材效果、260多个书中案例关键词、5200个绘画关键词等。具体内容按以下两条线展开。
一是技能线:详细讲解了ChatGPT关键词的挖掘方法、文心一格的绘画技巧、常见的AI构图与光线色调指令、Midjourney常用的绘图指令,以及AI绘图的4种方法。
二是案例线:介绍了人物摄影、动物摄影、植物摄影、建筑摄影、慢门摄影、星空摄影、航拍摄影、全景摄影、风光摄影、人文摄影、产品摄影、时尚摄影等多种热门摄影的知识。
本书由浅入深,以实战为核心,既适合摄影师、绘画爱好者、设计师、插画师、漫画家、电商商家、艺术工作者等阅读,又可作为相关院校的教材。

作者简介

石头,零点画室创始人,资深摄影师,省级摄影家协会会员,毕业于湖南工艺美术学院,参与过《蓝猫总动员》的创作,2022年远赴日本、美国学习AI绘画技术,对Midjourney、Stable Diffusion有着丰富的实战经验,尤喜动漫风、中国风效果的绘制。

目  录

目 录
第1章.文案生成:ChatGPT摄影应用……………………………001
1.1 掌握关键词的挖掘技巧……002
001 使用ChatGPT进行对话 …002
002 使用特定关键词提升逻辑性 …003
003 使用关键词拓宽思维广度 …004
004 提供详细要求获取答案 …006
005 提供实例说明需求 …007
006 通过扮演角色获取答案 …008
1.2 生成AI绘画关键词……010
007 直接提问获取关键词 …011
008 通过对话不断获取关键词 …013
009 区分中、英文关键词 …016
1.3 生成AI摄影关键词……019

前  言

在数字化时代,AI技术的发展对经济产生了巨大影响。它改变了生产、制造和服务行业,提高了生产效率,降低了成本,创造了新的商业模式。随着ChatGPT、Midjourney和文心一格等AI工具的出现和发展,AI绘画技术逐渐开始创作出各种新颖、独特的艺术作品,为艺术家提供了新的创作工具和灵感,帮助艺术家突破传统的创作限制。然而,目前市场上关于AI绘图工具的资料和书籍还相对稀缺。
秉持着响应国家科技兴邦、实干兴邦的精神,我们致力于为读者提供一种全新的学习方式,使其能够更好地适应时代发展的需要。本书结合ChatGPT与Midjourney、文心一格等多种AI绘图工具,为读者提供了108个实用技巧,从关键词提取到图片的制作生成,从讲解基础绘图参数到运用参数进行实战,帮助读者全方位熟悉AI绘图工具,使读者能够在日常生活中充分利用AI技术,体验人工智能在绘画和摄影中的潜力和价值。
综合来看,本书有以下3个亮点。
(1)实战干货。本书提供了108个实用的技巧和实例,涵盖了ChatGPT的关键词提取、文心一格的操作方法、全面大量的AI绘图指令和AI绘图操作步骤等各个方面的内容。这些实战干货可以帮助读者快速掌握AI绘画和AI摄影的核心技能,并将其应用到实际工作场景中。同时,本书还针对每个技巧进行了详细的说明和演示,并辅以360多张彩插图解实例操作过程,以便读者更好地理解和应用所学知识。
(2)视频教学。本书为所有操作案例录制了同步的高清教学视频,共108集,120多分钟,读者可以用手机扫码,边看边学,边学边用。
(3)物超所值。本书介绍了3款软件,读者花1本书的钱,可以同时学习3款软件的精华,并且随书赠送了50多个素材效果、260多个书中案例关键词、5200个绘画关键词,方便读者进行实战操作练习,提高自己的绘图技能。
特别提示:
(1)版本更新:本书在编写时,是基于当时各种AI工具和软件的界面截取的实际操作图片,但本书从编辑到出版需要一段时间,这些工具的功能和界面可能会有所变动,请在阅读时,根据书中的思路举一反三进行学习。其中,ChatGPT为3.5版,Midjourney为5.2版。
(2)指令的称谓:指令又称为关键词、描述词、提示词或“咒语”,它是我们与AI模型进行交流的机器语言,书中在不同场合使用了不同的称谓,主要是为了让大家更好地理解这些行业用语,避免一叶障目。另外,很多关键词暂时没有对应的中文翻译,强行翻译为中文也会让人无法理解AI模型。
(3)指令的使用:在Midjourney中,尽量使用英文指令,对于英文单词的格式没有太多要求,如首字母大小写不用统一、单词顺序不用太讲究等。但需要注意的是,每个指令中间最好添加空格或逗号,同时所有的标点符号使用英文字体。另外,需要特别注意的是,即使是相同的指令,AI模型每次生成的文案或图片内容也会有差别。
(4)特别提醒:尽管ChatGPT具备强大的模拟人类对话的能力,但由于其是基于机器学习的模型,因此在生成的文案中仍然会存在一些语法错误,读者需根据自身需求对文案进行适当修改或再加工后方可使用。
本书由石头编著,参与编写的人员还有刘阳洋,在此表示感谢。由于作者水平有限,书中难免存在疏漏之处,恳请广大读者批评、指正。读者可扫描封底“文泉云盘”二维码获取作者联系方式,与我们沟通交流。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SCI一区 | Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测

SCI一区 | Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测 目录 SCI一区 | Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.【SCI一区级】Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测&#xff08;程…

中国网络安全审查认证和市场监管大数据中心数据合规官CCRC-DCO

关于CCRC-DCO证书的颁发机构&#xff0c;它是由中国网络安全审查认证与市场监管大数据中心&#xff08;简称CCRC&#xff09;负责。 该中心在2006年得到中央机构编制委员会办公室的批准成立&#xff0c;隶属于国家市场监督管理总局&#xff0c;是其直辖的事业单位。 依据《网络…

技术派全局异常处理

前言 全局的异常处理是Java后端不可或缺的一部分&#xff0c;可以提高代码的健壮性和可维护性。 在我们的开发中&#xff0c;总是难免会碰到一些未经处理的异常&#xff0c;假如没有做全局异常处理&#xff0c;那么我们返回给用户的信息应该是不友好的&#xff0c;很抽象的&am…

认识100种电路之耦合电路

在电子电路的世界中&#xff0c;耦合电路宛如一座精巧的桥梁&#xff0c;连接着各个功能模块&#xff0c;发挥着至关重要的作用。 【为什么电路需要耦合】 在复杂的电子系统中&#xff0c;不同的电路模块往往需要协同工作&#xff0c;以实现特定的功能。然而&#xff0c;这些模…

QuickBooks 2024 for Mac:财务智慧,触手可及

QuickBooks 2024 for Mac是一款专为Mac用户设计的专业财务管理软件&#xff0c;它集成了多种实用功能&#xff0c;助力企业和个人用户高效管理财务事务。 &#x1f4ca; 全面的财务管理工具&#xff1a;QuickBooks 2024 for Mac 提供了一套全面的财务管理功能&#xff0c;包括…

基于昇腾AI | Yolov7模型迁移到昇腾平台EA500I边缘计算盒子的实操指南

近年来&#xff0c;国产化替代的进程正在加快。在众多国产平台中&#xff0c;昇腾平台具有高性能、低功耗、易扩展、软件栈全面成熟等优势&#xff0c;其产品和技术在国内众多领域实现了广泛应用&#xff1b;作为昇腾的APN伙伴和IHV合作伙伴&#xff0c;英码科技携手昇腾推出了…

数据结构之“刷链表题”

&#x1f339;个人主页&#x1f339;&#xff1a;喜欢草莓熊的bear &#x1f339;专栏&#x1f339;&#xff1a;数据结构 目录 前言 一、相交链表 题目链接 大致思路 代码实现 二、环形链表1 题目链接 大致思路 代码实现 三、环形链表2 题目链接 大致思路 代码实…

python sklearn机械学习模型-分类

&#x1f308;所属专栏&#xff1a;【机械学习】✨作者主页&#xff1a; Mr.Zwq✔️个人简介&#xff1a;一个正在努力学技术的Python领域创作者&#xff0c;擅长爬虫&#xff0c;逆向&#xff0c;全栈方向&#xff0c;专注基础和实战分享&#xff0c;欢迎咨询&#xff01; 您…

WIN11,如何同时连接有线网络与WLAN无线网络

之前写了两篇文章&#xff0c;一篇是双网卡多网卡时win11如何设置网卡优先级_多网卡设置网卡优先级-CSDN博客 另一篇是win11 以太网和WLAN冲突 连接网线时导致WiFi掉线 解决_win11 以太网和wifi不能同时生效-CSDN博客 这篇是对上面两篇的补充&#xff1a;主要解决电脑重启后&…

适用于高海拔地区的工业路由器产品

1、西藏背景 西藏&#xff0c;这个位于中国西南部的神秘之地&#xff0c;以其雄伟壮观、神奇瑰丽的自然风光和深厚的文化底蕴&#xff0c;被无数人视为心中的圣地。这里属于高原性气候&#xff0c;具有气温低、气压低&#xff0c;降水少&#xff0c;生态环境十分恶劣。西藏被誉…

计算机网络-第5章运输层

5.1运输层协议概述 5.1.1进程之间的通信 运输层向它上面的应用层提供通信服务&#xff0c;它属于面向通信部分的最高层&#xff0c;同时也是用户功能中的最低层。 通信的两端应当是两个主机中的应用进程。 运输层复用和分用&#xff1a;复用指在发送方不同的应用进程都可以…

Linux下SUID提权学习 - 从原理到使用

目录 1. 文件权限介绍1.1 suid权限1.2 sgid权限1.3 sticky权限 2. SUID权限3. 设置SUID权限4. SUID提权原理5. SUID提权步骤6. 常用指令的提权方法6.1 nmap6.2 find6.3 vim6.4 bash6.5 less6.6 more6.7 其他命令的提权方法 1. 文件权限介绍 linux的文件有普通权限和特殊权限&a…

基于Python的自动化测试框架-Pytest总结-第一弹基础

Pytest总结第一弹基础 入门知识点安装pytest运行pytest测试用例发现规则执行方式命令行执行参数 配置发现规则 如何编写测试Case基础案例断言语句的使用pytest.fail() 和 Exceptions自定义断言函数异常测试测试类形式 pytest的Fixture使用Fixture入门案例使用fixture的Setup、T…

RabbitMQ 之 延迟队列

目录 ​编辑一、延迟队列概念 二、延迟队列使用场景 三、整合 SpringBoot 1、创建项目 2、添加依赖 3、修改配置文件 4、添加 Swagger 配置类 四、队列 TTL 1、代码架构图 2、配置文件代码类 3、生产者 4、消费者 5、结果展示 五、延时队列优化 1、代码架构图 …

CentOS中使用SSH远程登录

CentOS中使用SSH远程登录 准备工作SSH概述SSH服务的安装与启动建立SSH连接SSH配置文件修改SSH默认端口SSH文件传输 准备工作 两台安装CentOS系统的虚拟机 客户机&#xff08;192.168.239.128&#xff09; 服务器&#xff08;192.168.239.129&#xff09; SSH概述 Secure S…

叮!云原生虚拟数仓 PieCloudDB Database 动态包裹已送达

第一部分 PieCloudDB Database 最新动态 支持动态配置查询簇 PieCloudDB 最新内核版本 v2.14.0 新增动态配置查询簇功能。PieCloudDB 动态配置查询簇功能实现可伸缩的并行化查询&#xff0c;可提升单个查询并行使用底层资源的能力&#xff0c;同时加快查询响应速度。 动态配…

基于隐马尔可夫模型的股票预测【HMM】

基于机器学习方法的股票预测系列文章目录 一、基于强化学习DQN的股票预测【股票交易】 二、基于CNN的股票预测方法【卷积神经网络】 三、基于隐马尔可夫模型的股票预测【HMM】 文章目录 基于机器学习方法的股票预测系列文章目录一、HMM模型简介&#xff08;1&#xff09;前向后…

学生管理系统

一、登录 用户类&#xff1a;属性&#xff1a;用户名、密码、身份证号码、手机号码 1、欢迎页面 System.out.println("欢迎来到学生管理系统"); System.out.println("请选择操作1登录 2注册 3忘记密码"); 代码实现&#xff1a; //欢迎页面public static…

Rabbitmq部署

环境 操作系统CentOS7 安装 准备安装包 # rabbitmq基于erlang语言开发&#xff0c;需先安装erlang语言解释器 [rootnode2 ~]# ls erlang-21.3-1.el7.x86_64.rpm rabbitmq-server-3.8.8-1.el7.noarch.rpm [rootnode2 ~]# rpm -ivh erlang-21.3-1.el7.x86_64.rpm #安装soca…

【嵌入式】探索嵌入式世界:在ARM上构建俄罗斯方块游戏的奇妙之旅

文章目录 前言&#xff1a;1. 简介2. 总体设计思路及功能描述2.1 设计思路2.2 功能描述2.3 程序流程图 3. 各部分程序功能及详细说明3.1 游戏界面函数3.1.1 游戏界面中的图片显示3.1.2 游戏开始界面3.1.3 游戏主界面3.1.4 游戏结束广告界面3.1.5 游戏界面中的触摸反馈3.1.6 游戏…