✅️ 定位语法
📌 基本用法
写法 | 精确匹配 | 模糊匹配 | 匹配开 头 | 匹配结尾 | 说明 |
---|
@属性名 | @属性名= | @属性名: | @属性名^ | @属性名$ | 按某个属性查找 |
@!属性名 | @!属性名= | @!属性名: | @!属性名^ | @!属性名$ | 查找属性不符合指定条件的元素 |
text | text= | text: 或不写 | text^ | text$ | 按某个文本查找 |
@text() | @text()= | @text(): | text()^ | text()$ | text 与@ 或@@ 配合使用时改为text() ,常用于多条件匹配 |
tag | tag= 或tag: | 无 | 无 | 无 | 查找某个类型的元素 |
@tag() | @tag()= 或@tag(): | 无 | 无 | 无 | 组合使用时查找某个类型的元素 |
xpath | xpath= 或xpath: | 无 | 无 | 无 | 用 xpath 方式查找元素 |
css | css= 或css: | 无 | 无 | 无 | 用 css selector 方式查找元素 |
📌 组合用法
写法 | 说明 |
---|
@@属性1@@属性2 | 匹配属性同时符合多个条件的元素 |
@@属性1@!属性2 | 多属性匹配与否定匹配同时使用 |
`@ | 属性1@ |
tag:xx@属性名 | tag 与属性匹配共同使用 |
tag:xx@@属性1@@属性2 | tag 与多属性匹配共同使用 |
`tag:xx@ | 属性1@ |
tab:@@text()=文本@@属性 | tab 与文本和属性匹配共同使用 |
📌 简化写法
原写法 | 简化写法 | 精确匹配 | 模糊匹配 | 匹配开头 | 匹配结尾 | 备注 |
---|
@id | # | # 或#= | #: | #^ | #$ | 简化写法只能单独使用 |
@class | . | . 或.= | .: | .^ | .$ | 简化写法只能单独使用 |
tag | t | t: 或t= | 无 | 无 | 无 | 只能用在句首 |
@tag() | @t() | @t(): 或@t()= | 无 | 无 | 无 | 可作为属性组合使用 |
text | tx | tx= | tx: 或不写 | tx^ | tx$ | 无标签时使用模糊匹配文本 |
@text() | @tx() | @tx()= | @tx(): | @tx()^ | @tx()$ | 可作为属性组合使用 |
xpath | x | x: 或x= | 无 | 无 | 无 | 只能单独使用 |
css | c | c: 或c= | 无 | 无 | 无 | 只能单独使用 |
✅️ 相对定位
方法 | 说明 |
---|
parent() | 查找当前元素某一级父元素 |
child() | 查找当前元素的一个直接子节点 |
children() | 查找当前元素全部符合条件的直接子节点 |
next() | 查找当前元素之后第一个符合条件的兄弟节点 |
nexts() | 查找当前元素之后所有符合条件的兄弟节点 |
prev() | 查找当前元素之前第一个符合条件的兄弟节点 |
prevs() | 查找当前元素之前所有符合条件的兄弟节点 |
after() | 查找文档中当前元素之后第一个符合条件的节点 |
afters() | 查找文档中当前元素之后所有符合条件的节点 |
before() | 查找文档中当前元素之前第一个符合条件的节点 |
befores() | 查找文档中当前元素之前所有符合条件的节点 |
✅️ iframe 和 shadow root
方法 | 简化写法 | 说明 | 备注 |
---|
get_frame() | 无 | 在页面中查找一个<iframe> 元素 | 只有页面对象有此方法 |
shadow_root | sr | 获取当前元素内的 shadow root 对象 | 只有元素对象有此属性 |
✅️ 特殊字符对照表
要匹配的文本中如包含特殊字符(如' '
、'>'
),需将特殊字符转为十六进制,对照表如下:
特殊符号 | 命名实体 | 编码 | 特殊符号 | 命名实体 | 编码 | 特殊符号 | 命名实体 | 编码 |
---|
Α | Α | \u0391 | Β | Β | \u0392 | Γ | Γ | \u0393 |
Δ | Δ | \u0394 | Ε | Ε | \u0395 | Ζ | Ζ | \u0396 |
Η | Η | \u0397 | Θ | Θ | \u0398 | Ι | Ι | \u0399 |
Κ | Κ | \u039A | Λ | Λ | \u039B | Μ | Μ | \u039C |
Ν | Ν | \u039D | Ξ | Ξ | \u039E | Ο | Ο | \u039F |
Π | Π | \u03A0 | Ρ | Ρ | \u03A1 | Σ | Σ | \u03A3 |
Τ | Τ | \u03A4 | Υ | Υ | \u03A5 | Φ | Φ | \u03A6 |
Χ | Χ | \u03A7 | Ψ | Ψ | \u03A8 | Ω | Ω | \u03A9 |
α | α | \u03B1 | β | β | \u03B2 | γ | γ | \u03B3 |
δ | δ | \u03B4 | ε | ε | \u03B5 | ζ | ζ | \u03B6 |
η | η | \u03B7 | θ | θ | \u03B8 | ι | ι | \u03B9 |
κ | κ | \u03BA | λ | λ | \u03BB | μ | μ | \u03BC |
ν | ν | \u03BD | ξ | ξ | \u03BE | ο | ο | \u03BF |
π | π | \u03C0 | ρ | ρ | \u03C1 | ς | ς | \u03C2 |
σ | σ | \u03C3 | τ | τ | \u03C4 | υ | υ | \u03C5 |
φ | φ | \u03C6 | χ | χ | \u03C7 | ψ | ψ | \u03C8 |
ω | ω | \u03C9 | ϑ | ϑ | \u03D1 | ϒ | ϒ | \u03D2 |
ϖ | ϖ | \u03D6 | • | • | \u2022 | … | … | \u2026 |
′ | ′ | \u2032 | ″ | ″ | \u2033 | ‾ | ‾ | \u203E |
⁄ | ⁄ | \u2044 | ℘ | ℘ | \u2118 | ℑ | ℑ | \u2111 |
ℜ | ℜ | \u211C | ™ | ™ | \u2122 | ℵ | ℵ | \u2135 |
← | ← | \u2190 | ↑ | ↑ | \u2191 | → | → | \u2192 |
↓ | ↓ | \u2193 | ↔ | ↔ | \u2194 | ↵ | ↵ | \u21B5 |
⇐ | ⇐ | \u21D0 | ⇑ | ⇑ | \u21D1 | ⇒ | ⇒ | \u21D2 |
⇓ | ⇓ | \u21D3 | ⇔ | ⇔ | \u21D4 | ∀ | ∀ | \u2200 |
∂ | ∂ | \u2202 | ∃ | ∃ | \u2203 | ∅ | ∅ | \u2205 |
∇ | ∇ | \u2207 | ∈ | ∈ | \u2208 | ∉ | ∉ | \u2209 |
∋ | ∋ | \u220B | ∏ | ∏ | \u220F | ∑ | ∑ | \u2212 |
− | − | \u2212 | ∗ | ∗ | \u2217 | √ | √ | \u221A |
∝ | ∝ | \u221D | ∞ | ∞ | \u221E | ∠ | ∠ | \u2220 |
∧ | ∧ | \u22A5 | ∨ | ∨ | \u22A6 | ∩ | ∩ | \u2229 |
∪ | ∪ | \u222A | ∫ | ∫ | \u222B | ∴ | ∴ | \u2234 |
∼ | ∼ | \u223C | ≅ | ≅ | \u2245 | ≈ | ≈ | \u2245 |
≠ | ≠ | \u2260 | ≡ | ≡ | \u2261 | ≤ | ≤ | \u2264 |
≥ | ≥ | \u2265 | ⊂ | ⊂ | \u2282 | ⊃ | ⊃ | \u2283 |
⊄ | ⊄ | \u2284 | ⊆ | ⊆ | \u2286 | ⊇ | ⊇ | \u2287 |
⊕ | ⊕ | \u2295 | ⊗ | ⊗ | \u2297 | ⊥ | ⊥ | \u22A5 |
⋅ | ⋅ | \u22C5 | ⌈ | ⌈ | \u2308 | ⌉ | ⌉ | \u2309 |
⌊ | ⌊ | \u230A | ⌋ | ⌋ | \u230B | ◊ | ◊ | \u25CA |
♠ | ♠ | \u2660 | ♣ | ♣ | \u2663 | ♥ | ♥ | \u2665 |
♦ | ♦ | \u2666 | | | \u00A0 | ¡ | ¡ | \u00A1 |
¢ | ¢ | \u00A2 | £ | £ | \u00A3 | ¤ | ¤ | \u00A4 |
¥ | ¥ | \u00A5 | ¦ | ¦ | \u00A6 | § | § | \u00A7 |
¨ | ¨ | \u00A8 | © | © | \u00A9 | ª | ª | \u00AA |
« | « | \u00AB | ¬ | ¬ | \u00AC | | ­ | \u00AD |
® | ® | \u00AE | ¯ | ¯ | \u00AF | ° | ° | \u00B0 |
± | ± | \u00B1 | ² | ² | \u00B2 | ³ | ³ | \u00B3 |
´ | ´ | \u00B4 | µ | µ | \u0012 | " | " | \u0022 |
< | < | \u003C | > | > | \u003E | ' | | \u0027 |