MaxKB web 站点知识库选择器的花样玩法
背景:MaxKB 创建知识库支持“web 站点”的这种形式,但是很多同学不知道怎么录入选择器来针对性的获取某一部分内容。

1. 选择器作用
选择器用于定位网页中特定的元素,以便获取其数据。
默认情况下,如果没有指定选择器,系统会获取整个 body 的内容。
如果需要获取页面中某个特定区域的内容,就需要通过选择器来定位这个区域。
2.怎么编写选择器
2.1 使用浏览器的开发者工具
打开目标网页。

右键点击页面中你想要获取数据的区域,选择“检查”(Inspect)。

在开发者工具中,你会看到页面的 HTML 结构。

找到对应的 HTML 元素(例如< div >、< span >等),并查看它的类名(class)、ID(id)或其他属性。

2.2 编写选择器
在开发者工具的“控制台”(Console)中,可以使用 querySelector() 或 document.querySelectorAll() 来测试选择器是否正确。
querySelector:捕获首位“中意之人”。

querySelectorAll:网罗全部“中意之人”。

拿类选择器举例:

以下是相关选择器参考:
标签选择器
语法:document.querySelector('标签名')
示例:document.querySelector('div'),选择页面中的第一个< div >元素。

类选择器
语法:document.querySelector('.类名')
示例:document.querySelector('.md-container'),选择页面中第一个带有 class="md-container" 的元素。

ID 选择器
语法:document.querySelector('#ID名')
示例:document.querySelector('#_1'),选择页面中 id="_1" 的元素。

属性选择器
语法:document.querySelector('元素名[属性名]') 或 document.querySelector('元素名[属性名="属性值"]')
示例:
document.querySelector('input[type="text"]'),选择页面中第一个 type="text" 的 < input > 元素。
document.querySelector('img[alt]'),选择页面中第一个带有 alt 属性的< img > 元素。

组合选择器
语法:可以将多个选择器组合使用,例如类和标签组合。
示例:document.querySelector('div.container'),选择页面中第一个 < div > 且 class="container" 的元素。

伪类选择器
语法:document.querySelector('元素名:伪类名')
示例:document.querySelector('li:first-child'),选择页面中第一个 < li > 元素。

后代选择器
语法:document.querySelector('祖先元素 后代元素')
示例:document.querySelector('ul li'),选择页面中第一个 < ul > 元素内的 < li > 元素。

子代选择器
语法:document.querySelector('父元素>子元素')
示例:document.querySelector('ul>li'),选择页面中第一个 < ul > 元素的直接子元素 < li >。

相邻兄弟选择器
语法:document.querySelector('元素1+元素2')
示例:document.querySelector('button+div'),选择页面中第一个紧接在 < button > 元素之后的 < div > 元素。

通用兄弟选择器
语法:document.querySelector('元素1~元素2')
示例:document.querySelector('input~div'),选择页面中第一个 < input > 元素之后的所有 < div > 元素。

其他选择器
- 如果目标元素没有类名或 ID,但可以通过其他属性或层级关系定位,可以使用更复杂的选择器。例如:
- 如果目标元素是一个 < div >,并且它是某个父元素的第一个子元素,可以使用 div:nth-child(1)。

- 如果目标元素是某个特定类名的子元素,可以使用嵌套选择器,例如 .md-container > .md-main。

- 如果目标元素是一个 < div >,并且它是某个父元素的第一个子元素,可以使用 div:nth-child(1)。
- 如果目标元素没有类名或 ID,但可以通过其他属性或层级关系定位,可以使用更复杂的选择器。例如:
注意:MaxKB 选择器则是录入 document.querySelector() 或者 document.querySelectorAll() 中单引号中的内容。
附录:
更多参考:https://www.runoob.com/cssref/css-selectors.html
MaxKB web 站点知识库选择器的花样玩法的更多相关文章
- Less混合结合:nth-child()选择器的高级玩法
1.先看效果图 上图中比较麻烦的是每块的底色处理,下面看怎么处理 2.:nth-child(n) 选择器 匹配属于其父元素的第 N 个子元素,不论元素的类型. n 可以是数字.关键词或公式. 数字:最 ...
- 手机web站点和手机app 技术选型的困惑于思考
今年一直在关注移动端技术的发展,自己也用博客园的rss接口玩了半年,关于技术选型的困惑和大家说说 一 趋势 随着手机硬件不断的升级,外加4g牌照的发放,不出2年时间移动端web站点和手机app一定会进 ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第一章:创建基本的MVC Web站点
在这一章中,我们将学习如何使用基架快速搭建和运行一个简单的Microsoft ASP.NET MVC Web站点.在我们马上投入学习和编码之前,我们首先了解一些有关ASP.NET MVC和Entity ...
- 【读书笔记】2016.12.10 《构建高性能Web站点》
本文地址 分享提纲: 1. 概述 2. 知识点 3. 待整理点 4. 参考文档 1. 概述 1.1)[该书信息] <构建高性能Web站点>: -- 百度百科 -- 本书目录: 第1章 绪论 ...
- 如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites]
如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites] 一.布局页面介绍[Abo ...
- 将Web站点由IIS6迁移至IIS7
最近开始着手逐步将所有的Web站点由Win2003+IIS6迁移至64位Win2008+IIS7,基本还算顺利.这里就把相关内容整理总结一下.首先自然是要安装基本运行环境,包括iis,.net fra ...
- 《构建高性能web站点》随笔 无处不在的性能问题
前言– 追寻大牛的足迹,无处不在的“性能”问题. 最近在读郭欣大牛的<构建高性能Web站点>,读完收益颇多.作者从HTTP.多级缓存.服务器并发策略.数据库.负载均衡.分布式文件系统多个方 ...
- 利用IIS导出,导入快速部署 web站点
部署负载均衡站点的时候会创建多个站点拷贝.用脚本可以提高效率,并且减少错误 1 以管理员身份运行CMD 2 Cd C:\Windows\System32\inetsrv 3 导出指定的应用程序池 ap ...
- 为Windows Azure Web站点添加MIME类型解决文件下载失败的问题
这几天在倒腾Autodesk 360 Viewer,前面的文章也介绍过了,这将是一个全新的在线模型浏览工具.我做了个实验,把A360Viewer放在一个web 站点,然后发布到Windows Azur ...
- 让 Web 站点崩溃最常见的七大原因
磁盘已满 导致系统无法正常运行的最可能的原因是磁盘已满.一个好的网络管理员会密切关注磁盘的使用情况,隔一定的时间,就需要将磁盘上的一些负载转存到备份存储介质中(例如磁带). 日志文件会很快用光所有 ...
随机推荐
- w3cschool-Struts2 概述
Struts2 概述 Struts2 是目前较为普及和成熟的基于MVC设计模式的web应用程序框架,它不仅仅是Struts1 的升级版本,更是一个全新的Struts架构.最初,是以WebWork框架和 ...
- 如何解决:Android Studio (version 4.1); Flutter plugin not installed and Dart plugin not installed errors
出现的现象 android studio 4.1已经安装了flutter和dart插件,但是执行 flutter doctor依然报错. [!] Android Studio (version 4.1 ...
- 天翼云完成首个国产化万卡训练,MFU达到国内领先水平!
天翼云自研国内首个单集群万卡国产化全功能预训练云服务平台发布上线,并完成万卡规模Llama3.1-405B大模型训练.Llama3.1-405B作为4000亿参数的模型,在息壤训推服务平台的支持下经过 ...
- Linux视频播放器安装
sudo add-apt-repository ppa:rvm/smplayer sudo apt-get update sudo apt-get install smplayer PPA: ppa ...
- 本地一键运行大模型神器Ollama + DeepSeek R1尝鲜指南
本地一键运行大模型神器Ollama + DeepSeek R1尝鲜指南 作为AI领域的弄潮儿,你是否苦恼于云端大模型API的高昂成本?想在本机零门槛体验顶尖开源模型?这篇保姆级教程将带你解锁「Olla ...
- 微信扫码登录授权过程中state字段的用法
问题描述 最近在实现微信扫码登录这一块,然后看到state字段上面说是可以防csrf攻击 那么现在假设一个用户扫完码后由于某些原因扫码后的响应还没到,但是该平台的回调url已被窃取,然后被人设置到某个 ...
- vue+elementui怎样点击table中的单元格触发事件--弹框
可以先看一下官网中table的自定义列模板代码 <template> <el-table :data="tableData" border s ...
- 动手学大模型应用开发,第4天:Prompt设计
第一章.Prompt 设计的原则和技巧 LLM 时代 prompt 这个词对于每个使用者和开发者来说已经听得滚瓜烂熟,那么到底什么是 prompt 呢?简单来说,prompt(提示) 就是用户与大模型 ...
- docker - [16] Swarm集群搭建
以下是购买的阿里云服务器ECS的四个实例,确保四台服务器互相可以ping通. 一.环境准备(安装docker) (1)安装gcc相关环境(在四台服务器上) yum -y install gcc yum ...
- DW - 数据仓库原理
2023年5月31日 01:13:14,刷B站的时候,刷到了李鹏程大佬的B站作品. 数据仓库的诞生原因 数据仓库的基本概述 数据仓库的特点 数据仓库 vs 数据库 MPP架构 vs 分布式架构 数据仓 ...