九科bit-Worker RPA 内容学习
入门阶段, 花时间学习和记忆细枝末节,可能会反而分散新手去理解核心逻辑的精力,并且不常用的知识也很容易被遗忘。
简介:
什么是RPA?
RPA(Robotic Process Automation,机器人流程自动化)本质上是一种“AI数字员工”,针对企业中存在的大批量、重复性、机械化人工操作,通过模拟人的工作流程使之实现自动化。
bit-Worker RPA可以应用于多种数据量大、重复度高、规则明确、跨业务系统、高人力成本的业务场景下,例如银行、物流、证券、供应链等等。
九科官网如下:
RPA|bit-Miner流程挖掘|九科RPA+AI智能流程自动化解决方案九科企业级敏捷应用平台RPA+AI+低代码+流程挖掘,加速企业数字化转型,九科RPA+AI智能流程自动化解决方案https://www.ninetechone.com/
以下是对九科 bit-Worker Designer 介绍视频学习内容,以及思维导图:
基础流程搭建 · 小九https://help.ninetechone.com/train-certification/smallfile/%E8%AE%BE%E8%AE%A1%E5%99%A8%EF%BC%88%E5%88%9D%E7%BA%A7%EF%BC%89/%E5%9F%BA%E7%A1%80%E6%B5%81%E7%A8%8B%E6%90%AD%E5%BB%BA.html
bit-Worker - 幕布流程搭建基础概念 活动(activity)自动化活动组件——构成流程的基本单元(即一个活动相当于一个操作)流程流程是一系列活动的集合时序图:只有顺序结构和分支结构的流程(从上到下按序列排列)适用场景: 适用于小段的、按顺序执行的、不需要重复执行某些步骤的流程流程图:将流程按照不同的分支去匹配执行适用场景: 适用于相对复杂,且执行过程中有大量重复执行的操作步骤或者流程中含有两个以上的分支条https://www.mubu.com/doc/6Bu1p-TpOb5
设计器初级内容:
(1)设计器界面各模块
bit-Worker 流程设计器界面各模块的功能如下:
- 自动化组件面板:流程新建与管理、400+自动化组件工具箱、系统及业务配置中心、第三方库导入;
- 工程栏:标准化调试与运行功能、工程发布、版本管理;
- 流程搭建画布:流程设计区;
- 要素栏:变量/参数/元素/图片集中创建管理区;
- 信息栏:工程运行结果、工程运行日志、变量变化查看;
- 属性面板:活动组件属性编辑、流程概要。
(2)工程设置
参数、变量、库、属性、配置等各项要素的设置和管理
(1)参数:在流程执行时由外界动态传入具体的值
变量在活动之间传递数据,而参数在流程之间传递数据。
(2)变量:点击使用Ctrl+K新建变量
(3)库:工程栏下的功能库可右键 “导入” python库 或我的功能库 进行库的导入
(4)配置中心:
(3)元素及图片集
元素集和图片集的概念以及使用方法
(4)一般流程控制
通过 if、while、for-each(遍历循环、并行遍历) 和 try-catch 从而进行流程控制
(5)元素与图片操作
元素操作:
图片操作实例:
‼️注意:需要注意的是路径需要使用双斜杠
(6)调试与运行
中级内容
(1)Python代码执行
使用bit-Worker执行代码以及文件
(2)数据处理(数据表、字符串)
数据表操作——>数据表联结需要有相同的列!!
字符串操作较为简单
(3)🌟网页操作自动化
网页操作自动化——>定位,操作
案例:自动化填写表单的简单流程
具体操作步骤:界面自动化/游览器/ 新建游览器——>元素操作/鼠标/点击——>鼠标键盘/鼠标/滚轮——>应用/Excel/获取指定行内容——>界面自动化/元素操作/键盘/发送文本(需要逐一将输入框与表格单元格录入的内容进行对应)
(4)操作系统自动化
案例:如对文件和文件夹进行相关操作活动
(5)应用程序自动化 (Excel、邮件)
可实现Excel与浏览器相关活动、进行收发邮件相关的活动
案例:抓取网页数据,追加到表格
抓取 页面表格 数据汇总 实操解析:
- 可通过 “数据抓取” 拿到网页数据。此时抓取数据为数据表即 System.Data.DataTable;
- 再通过数据表的 “获取列” 将数据表抓取的数据通过输出项的 “输出列数组” 转换为 System.Object[] 类型的数据;
- 再通过Excel的 “写入列” 将抓取的数据进行汇总到一个表格。
单独看邮件字段操作如下:
(6)流程控制 (状态机、流程图)
1*状态机说明:
- 状态机:建模容器,内部只能放置状态流与跳转条件;
- 状态流:分为入口、出口和跳转条件;
- entry:进入状态流时要执行的活动;
- exit:离开状态流时要执行的活动;
- 跳转条件:判断是否满足给定条件、满足哪个条件,以决定流程执行的流向。
(7)UI探测器
UI探测器各模块介绍:
- 菜单栏:验证、元素高亮、元素捕获、元素锚点;
- 可视化栏:可视化树、属性展示;
- 选取栏:特征选取、属性选取;
- 结果栏:结果代码显示、元素缩略图显示。
(8)流程录制
九科技术文档如下:
产品概述 · GitBookhttps://help.ninetechone.com/
以下是对官方技术文档的详细内容的学习
(着重注意组件的输入、输出项,因为大概率会遇到数列类型有误,报错看不懂找不到的问题,需要有心理准备):
一、流程设计器
流程设计
子流程
(1)使用说明:
- 一个工程中可以包含多个子流程,每个子流程都可单独调试运行
- 子流程可通过 「引用流程」 活动组件,在工程中相互引用(但子流程不可以引用Main流程);
- 流程之间可以通过 参数 设置来传递参数
属性与要素
(1)属性
基本信息:活动组件名称;
输入项:文本、元素、数据表或者使用变量指定;
输出项:输出项必须使用相应类型的变量指定;
通用设置:包括异常处理、重试次数、重试时间间隔(ms)、执行前延迟(ms)、执行后延迟(ms)等,属于活动的通用属性。
将作用和形式相近的属性归为一组,即属性组
(2)变量
底部要素栏的变量的 「变量列表」 按钮,可以打开当前流程的变量列表,列表中展示了当前流程中的所有变量
数据类型
1.String:文本类型;
2.Int32:数字类型(整数类型——>不带小数点和小数位);
3.Double:双精度浮点型;
4.Boolean:布尔类型;
5.DateTime:日期和时间类型——>在程序中存储日期和时间信息;
6.GenericValue:泛型——>是bit-Worker独有的一种数据类型,可以用于存储任何类型的数据,例如:Boolean、DateTime、String、Int32类型的数据;
7.Array:数组类型:存储同数据类型的多个值(整数类型数组、字符串类型数组、布尔值类型数组等);
8.Dictionary:字典类型:由Key(键-唯一)和Value(值)两个元素组成;
9.List:列表类型:实现大多数集合类的数据结构——>字符,数字,字符串甚至可以包含列表(即嵌套)。列表用[ ]标识,是最通用的复合数据类型。
列表和字典的区别是:
列表是有序的对象集合,字典是无序的对象集合。字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用"{ }"标识
(3)参数
- In(输入参数)
- Out(输出参数)
- InOut(输入输出参数)
输入参数可以接收到其他流程传递过来的参数
输出参数可以把本流程的参数传递出去给其他流程。
(4)元素集
进行“捕获新元素”从而获得新的元素信息,可以在“UI探测器”中进行编辑
右侧是已捕获元素的缩略图
右下角 编辑选取器 可以双击代码区域,可以直接修改元素代码
点击右上角的「编辑」 图标或者是点击该区域后按下快捷键CTRL+1 进行元素编辑的批量操作
(5)图片集
通过右侧的「+图片捕获器」 便可以捕获新图片
运行与调试
运行信息
用处:查看 运行结果、运行日志和变量变化
依赖包管理
组件包是活动的集合。工程会依赖某个组件包的具体一个版本。导出工程时,会包含依赖包信息。
共享与分布
版本控制
市场
二、🌟活动组件库
通用
(1)流程控制
1.多重赋值
使用说明:多个值同时赋值给多个变量,逐一为每个变量指定值
2.中断(break)
使用说明: 循环活动内部使用,中断活动,跳出循环体,执行后续活动
3.继续(continue)
使用说明:在活动所在处退出本次循环活动,并继续执行下一次循环
4.延迟
使用说明: 设定延时的时长,当延迟时间已达到再执行下一个活动
5.抛出异常
使用说明:在活动所处位置抛出一个指定异常
6.遍历循环
使用说明:按序遍历列表中的每一项值,并重复执行循环体内的活动流程,直至遍历结束
输入项:值——需要遍历的列表
输出项:当前索引——列表中的索引值
7.DoWhile
使用说明: 先完整执行一次活动内部循环体的流程,执行完成后,再进行条件判断
输入项:条件——> 执行循环的判断条件
8.While
使用说明:先判断是否满足给定的条件表达式,若满足循环条件,则执行循环体内的活动流程,直至不满足循环条件后,自动跳出循环
⭕9.引用流程
使用说明:引用同一工程下的其他流程(一个活动支持引用一个流程,功能类似于函数调用)
10.重试作用域
使用说明:将多个活动放置作用域内,如遇异常时,根据设置的重试次数重复执行多次
输入项:重试次数——>可重复执行的最大次数
输出项:当前重试次数——>出错时实际已经重试的次数
11.触发器作用域
使用说明:各种事件监控和触发的作用域活动,与触发器相关活动组合使用
输入项:计划模式——指定在触发触发器时如何执行操作
- 顺序:检测到多次触发动作时,会先完整执行一次的【操作】区域内流程,然后再按触发器被触发的次数继续执行【操作】区域内流程
- 并发:检测到多次触发动作时,各次触发的【操作】区域内流程会同时开始执行
- 单次执行:无论检测到几次触发动作,都只会执行一次【操作】区域内流程
⭕12.输出到日志
使用说明:将指定内容输出到运行日志,以查看运行结果。或将内容输出到日志以外的其他地方,如数据库、文件等
输入项:
① 文本编写器——将文本写入日志以外的其他地方,如数据库,文件等。传入参数需要以变量表示。若不填写,则只将内容输出到运行日志
②日志级别——调试、日志、警告、错误、致命
③内容——要输出的指定内容
④异常信息——抛出指定的异常信息
13.Try-Catch异常处理
使用说明:执行【Try】模块活动。捕获到异常,执行【Catch】中的活动。
- 【Try】模块——可能引发异常的流程
- 【Catch】模块——将处理异常的流程
- 【Finally】模块——无论是否出现异常,均会执行的流程
⭕14.赋值
使用说明:输入要赋予给变量的值,在输出中要赋值变量,可供后续流程调用
输入项:值——输入要赋予给变量的值
输出项:设置要赋予值的变量,可供后续流程调用
15.If判断
使用说明:判断指定条件的真假
- 真,则执行【Then】中的流程
- 假,则执行【Else】中的流程
输入项:条件——用来进行判断的条件表达式
16.并行
使用说明: 活动存在多个子活动并行时,在子活动1进入等待状态时,流程依次执行子活动2及以后子活动。即并行地异步执行子活动
输入项:完成条件——判断完成的条件
- 真,流程有一个子活动执行完成,则整个并行活动执行完成
- 假,流程执行完所有子活动,则整个并行活动执行完成
17.时序图
使用说明: 在内编辑或放置活动组件,然后运行
18.终止工作流
使用说明: 直接结束当前正在执行的任务,可自定义终止原因/异常(可配合Try-Catch异常处理活动使用)
输入项:
①原因——终止原因,可直接输出到运行日志中
②异常——异常信息,可配合Try-Catch异常处理活动使用
19.Switch
使用说明: 根据给定的表达式,执行对应Cases值中的流程。若无对应Cases值,则执行Default中的流程
输入项:
①参数类型
②表达式——>用来进行判断的条件
20.遍历循环
使用说明: 根据序列中的每个值,并行执行序列中的活动,当循环体中存在需要等待的活动时,流程会立即启动下一次循环,直至等待状态结束,或者遍历结束
当流程中不存在等待活动时:
当流程中存在等待活动时:
(2)流程图
注意:首个活动组件必须连接流程图中的【开始】
(3)状态机
1.状态机
放置一组状态流(状态流、最终状态流——必要组件,放置于所有状态流最后,来结束状态机)
2.状态流
使用说明: 构建状态机中某一个特定的状态(包括Entry和Exit两个模块)。流程从【开始】进入初始状态流,再通过跳转条件中的条件表达式判断进入哪一个状态流
注意:状态流与状态流之间必须有跳转条件,否则流程无法正常流转
应用(软件)
(1)数据库
(2)邮件
注意:密码为邮件账号的授权码
1.exchange 删除、获取、移动、发送
2.imap 获取、移动
Internet Mail Access Protocol
原理:用户通过远程服务器来访问和管理自己的电子邮件
- QQ邮箱的服务器主机为:imap.qq.com
- 网易邮箱服务器主机为:imap.163.com
- 993 端口: IMAP over SSL(IMAPS)的标准端口。这意味着通信通过加密的SSL/TLS连接进行,确保数据在传输过程中的安全性和完整性。大多数现代的邮件客户端和服务器都支持使用993端口进行安全的IMAP连接。
- 143 端口: IMAP 的标准端口。通信在此端口上是明文的,没有加密保护。虽然不安全,但仍然在某些场景下使用,例如在受信任的内部网络或需要更高性能而不需要加密的情况下。
3.pop3 获取
Post Office Protocol version 3
原理:单向操作协议,意味着它仅允许客户端从服务器上下载邮件
端口号:
- 110(未加密的普通文本连接)
- 995(加密连接,通常是通过SSL或TLS进行加密,称为POP3S)
4.smtp 发送
Simple Mail Transfer Protocol
原理:发送者通过与邮件服务器建立连接并发送命令来发送电子邮件
端口号:
- 标准端口号 25
- 加密的SMTP连接 465(SMTPS)
5.outlook 删除、获取、移动、回复、发送
通过Outlook客户端关联的邮箱账户进行操作邮件列表
(3)PDF
(4)Word
(5)Excel
界面自动化
🌟元素操作
操作
🌟抓取表格——>抓取文字和链接等信息
若点击提取相关数据,则会继续提取相关的元素
获取
获取元素选择——>获取该元素的所有选项值并将结果返回给输出项中元素选择值变量中
界面 鼠标 键盘 自动化
与 鼠标键盘 中鼠标、键盘 操作的区别是 有元素选择器,即发送文本是有目标的
设置
设置元素属性——为目标元素追加上 属性名和属性值
数据表常用方法
相关文章:

九科bit-Worker RPA 内容学习
入门阶段, 花时间学习和记忆细枝末节,可能会反而分散新手去理解核心逻辑的精力,并且不常用的知识也很容易被遗忘。 简介: 什么是RPA? RPA(Robotic Process Automation,机器人流程自动化&#x…...

vscode编译环境配置-golang
1. 支持跳转 如果单测函数上方不显示run test | debug test,需要安装Code Debugger(因为以前的go Test Explorer不再被维护了) 2. 单测 指定单个用例测试 go test -v run TestXXXdlv 调试 需要安装匹配的go版本和delve版本(如…...

【JavaEE】网络编程——UDP
🤡🤡🤡个人主页🤡🤡🤡 🤡🤡🤡JavaEE专栏🤡🤡🤡 文章目录 1.数据报套接字(UDP)1.1特点1.2编码1.2.1DatagramSocket1.2.2DatagramPacket…...

JAVA毕业设计147—基于Java+Springboot的手机维修管理系统(源代码+数据库)
基于JavaSpringboot的手机维修管理系统(源代码数据库)147 一、系统介绍 本项目分为用户、管理员、维修员三种角色 1、用户: 注册、登录、新闻公告、售后申请、申请列表、意见反馈、个人信息、密码修改 2、管理员: 用户管理、用户管理、栏目管理、网…...

力扣第228题“汇总区间”
在本篇文章中,我们将详细解读力扣第228题“汇总区间”。通过学习本篇文章,读者将掌握如何遍历和汇总区间,并了解相关的复杂度分析和模拟面试问答。每种方法都将配以详细的解释,以便于理解。 问题描述 力扣第228题“汇总区间”描…...

部署大语言模型并对话
在阿里云的https://developer.aliyun.com/adc/scenario/b105013328814fe995c0f091d708d67d 选择函数计算 设置服务器配置 复制公网地址 这个地址不能直接 在返回应用,创建应用LLM 对话页面 Open WebUI 点击下面的创建应用 部署完成后访问域名 打开访问地址...

WebSocket、socket.io-client
WebSocket WebSocket 是一种网络通信协议,它提供了一个在单个长期持久的 TCP 连接上进行全双工(full-duplex)通信的通道。 WebSocket 允许客户端和服务器之间进行双向的数据交换,这意味着服务器可以主动向客户端推送数据&#x…...

Maven 仓库
在 Maven 世界中,任何一个依赖、插件或者项目构建的输出,都可以称为 构件 。 坐标和依赖是构件在 Maven 世界中的逻辑表示方式,构件的物理表示方式是文件,Maven 通过仓库来统一管理这些文件。 任何一个构件都有一组坐标唯一标识。…...

给后台写了一个优雅的自定义风格的数据日志上报页面
highlight: atelier-cave-dark 查看后台数据日志是非常常见的场景,经常看到后台的小伙伴从服务器日志复制一段json数据字符串,然后找一个JSON工具网页打开,在线JSON格式化校验。有的时候,一些业务需要展示mqtt或者socket的实时信息展示,如果不做任何修改直接展示一串字符…...

【React Native优质开源项目】
🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共…...

Android 自动更新时间的数字时钟 TextClock
TextClock 继承 TextView ,使用方法和 TextView 一样。 它专门用于显示数字时钟,可以自定义显示格式。 只要在布局文件里添加,它会自动更新时间,不需要添加刷新逻辑。 布局文件, <?xml version"1.0"…...

【Linux Git入门】Git的介绍
文章目录 前言git简介git是什么git的作用为什么要学习git安装git总结前言 在现代软件开发中,版本控制系统已经成为了不可或缺的工具。其中,Git是最受欢迎的版本控制系统之一。Git是由Linux的创造者Linus Torvalds在2005年创建的,用于管理Linux内核的开发。Git是一个分布式版…...

kafka面试题(基础-进阶-高阶)
目录 Kafka 基础篇 1.Kafka 的用途有哪些?使用场景如何? 2.Kafka 中的ISR、AR 又代表什么?ISR 的伸缩又指什么 3.Kafka 中的 HW、LEO、LSO、LW 等分别代表什么? 4.Kafka 中是怎么体现消息顺序性的? 5.Kafka 中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序…...

《系统架构设计师教程(第2版)》第11章-未来信息综合技术-07-大数据技术概述
文章目录 1. 大数据的定义2. 大数据的研究内容2.1 面临的问题2.2 面临的挑战2.3 分析步骤2.3.1 数据获取和记录2.3.2 信息抽取和清洗2.3.3 数据集成、聚集和表示2.3.4 查询处理、数据建模和分析2.3.5 解释 3.大数据的应用领域3.1 制造业的应用3.2 服务业的应用3.3 交通行业的应…...

前端面试题54(断点续传讲解)
断点续传是一种在上传或下载大文件时,如果因为网络问题中断,可以从已经上传或下载的部分继续,而不是重新开始的技术。这对于提高用户体验和节省带宽非常有帮助。下面我将分别从HTTP协议层面、前端实现思路以及一个简单的前端实现示例来讲解断…...

YOLOv10改进 | Conv篇 | RCS-OSA替换C2f实现暴力涨点(减少通道的空间对象注意力机制)
一、本文介绍 本文给大家带来的改进机制是RCS-YOLO提出的RCS-OSA模块,其全称是"Reduced Channel Spatial Object Attention",意即"减少通道的空间对象注意力"。这个模块的主要功能是通过减少特征图的通道数量,同时关注空…...

【C++BFS】690. 员工的重要性
本文涉及知识点 CBFS算法 LeetCode690. 员工的重要性 你有一个保存员工信息的数据结构,它包含了员工唯一的 id ,重要度和直系下属的 id 。 给定一个员工数组 employees,其中: employees[i].id 是第 i 个员工的 ID。 employees[…...

视频调整帧率、分辨率+音画同步
# python data_utils/pre_video/multi_fps_crop_sync.pyimport cv2 import os from tqdm import tqdm import subprocess# 加载人脸检测模型 face_cascade cv2.CascadeClassifier(cv2.data.haarcascades haarcascade_frontalface_default.xml)def contains_face(frame):gray …...

【深度学习】关于模型加速
模型转为半精度的会加快推理速度吗 将模型转为半精度(通常指16位浮点数,即FP16)确实可以加快推理速度,同时还能减少显存(GPU内存)的使用。以下是一些关键点: 加快推理速度的原因 减少计算量&a…...

Python中time模块用法示例详解
前言 仅供个人学习用,如果对各位朋友有参考价值,给个赞或者收藏吧 ^_^ 一、time模块介绍 time模块是Python中处理时间相关操作的核心工具,提供了时间获取、格式化、转换、延迟以及计时等多种功能。 总的来说time模块中时间可以有3种格式&…...

解决POST请求中文乱码问题
解决POST请求中文乱码问题 1、乱码原因2、解决方法3、具体步骤 💖The Begin💖点点关注,收藏不迷路💖 在Web开发中,处理POST请求时经常遇到中文乱码问题,这主要是由于服务器在接收到POST请求的数据后&#x…...

Axure-黑马
Axure-黑马 编辑时间2024/7/12 来源:B站黑马程序员 需求其他根据:visio,墨刀 Axure介绍 Axure RP是美国Axure Software Solution给公司出品的一款快速原型大的软件,一般来说使用者会称他为Axure 应用场景 拉投资使用 给项目团…...

Centos解决服务器时间不准的问题
CentOS 系统时间老是自己变化可能有以下几个原因: 硬件时钟问题:服务器的硬件时钟可能出现故障或不准确。 时区设置错误:如果时区设置不正确,可能导致显示的时间与实际期望的时间不符。 系统服务异常:与时间同步相关…...

摸鱼大数据——Kafka——Kafka的shell命令使用
Kafka本质上就是一个消息队列的中间件的产品,主要负责消息数据的传递。也就说学习Kafka 也就是学习如何使用Kafka生产数据,以及如何使用Kafka来消费数据 topics操作 注意: 创建topic不指定分区数和副本数,默认都是1个 分区数可以后期通过alter增大,但是…...

在 Linux/Debian/Ubuntu 上使用 Brasero 刻录光盘
在 Ubuntu 系统中,Brasero 是一个非常方便的光盘刻录工具。无论是创建数据光盘、音频光盘还是刻录光盘镜像文件,Brasero 都能轻松胜任。本文将介绍如何在 Ubuntu 上安装和使用 Brasero 进行光盘刻录。 安装 Brasero 在大多数 Ubuntu 版本中,…...

QT之嵌入外部第三方软件到本窗体中
一、前言 使用QT开发,有时需要调用一些外部程序,但是单独打开一个外部窗口有的场合很不合适,最好是嵌入到开发的QT程序界面中。还有就是自己开发的n个程序,一个主程序托n个子程序,为了方便管理将各个程序独立…...

解决GET请求中文乱码问题
解决GET请求中文乱码问题 1、乱码的根本原因2、解决方法方法一:修改Tomcat配置(推荐)方法二:使用URLEncoder和URLDecoder(不推荐用于GET请求乱码)方法三:String类编解码(不直接解决乱…...

弥合人类与人工智能的知识差距:AlphaZero 中的概念发现和迁移(1)
文章目录 一、摘要二、简介三、相关工作3.1 基于概念的解释3.2 强化学习中生成解释3.3 国际象棋与人工智能 四、什么是概念?五、发掘概念5.1 挖掘概念向量5.1.1 静态概念的概念约束5.1.2 动态概念的概念约束 5.2 过滤概念 一、摘要 人工智能(AIÿ…...

cpp的cbp
.cbp 文件是 Code::Blocks 的项目文件。Code::Blocks 是一个开源的跨平台集成开发环境(IDE),主要用于 C、C 以及 Fortran 编程。.cbp 文件包含有关项目的所有配置信息,包括文件路径、编译选项、链接器设置等。 以下是 .cbp 文件的…...

jQuery 选择器
jQuery 选择器 jQuery 是一个快速、小巧且功能丰富的 JavaScript 库。它使得 HTML 文档遍历和操作、事件处理、动画和 AJAX 等操作更加简单,适用于各种浏览器。jQuery 的核心特性之一是其强大的选择器引擎,它允许开发者通过 CSS 选择器语法轻松地选取和操作 DOM 元素。本文将…...