Tìm hiểu về XPath Axes

Tram Ho

Xpath nhiều lúc sẽ không thể truy cập được theo cách thông thường, mà đòi hỏi chúng ta phải khéo léo kết hợp các nodes lại với nhau

XPath Axes là tập hợp rất nhiều cú pháp hỗ trợ truy vấn đến các mối quan hệ trong Nodes. Và mục đích cuối là tìm đến element mà ta đang tìm kiếm.

Vậy XPath Axes sẽ có những cú pháp nào, tác dụng của nó là gì. Thì bài sau đây mình sẽ chia sẻ để mọi người hiểu thêm về XPath Axes.

1. Following

Xpath=//div[@class='mobile']//following::span cho phép lấy ra tất cả các thẻ span trong mã nguồn nằm sau một thẻ div có class là ‘mobile’.

2. Preceding

Xpath=//div[@class='mobile']//preceding::span cho phép lấy ra tất cả các thẻ span trong mã nguồn nằm trước một thẻ div có class là ‘mobile’.

3. Descendant

Xpath=//div[@class='mobile']//descendant::span cho phép lấy ra tất cả các thẻ span trong mã nguồn là con cháu của một thẻ div có class là ‘mobile’.

** Cách dùng của Following-sibling, Preceding-sibling cũng giống với Descendant, khi sử dụng 1 trong 3 cái này thì đều cho kết quả xpath trả về giống nhau.

4. Ancestor

Xpath=//div[@class='mobile']//ancestor::div cho phép lấy ra tất cả các thẻ div trong mã nguồn là cha mẹ, tổ tiên của một thẻ div có class là ‘mobile’.

5. Parent

Xpath=//div[@class='mobile']//parent::span cho phép lấy ra tất cả các thẻ span là thẻ cha trong thẻ div có class là ‘mobile’.

6. Child

Xpath=//div[@class='mobile']//child::span cho phép lấy ra tất cả các thẻ span là thẻ con trong thẻ div có class là ‘mobile’.

Tham khảo thêm bảng đầy đủ của XPath Axes:

AxisNameĐịnh nghĩa
ancestorChọn tất cả tổ tiên (cha mẹ, ông bà, v.v.) của phần tử chỉ định
ancestor-or-selfChọn tất cả tổ tiên (cha mẹ, ông bà, v.v.) của phần tử chỉ định và chính nó
attributeChọn tất cả các thuộc tính của phần tử chỉ định
childChọn phần tử con của phần tử chỉ định
descendantChọn tất cả các phần tử con, cháu của phần tử chỉ định
descendant-or-selfChọn tất cả các phần tử con, cháu của phần tử chỉ định và chính nó
followingChọn tất cả các phần tử nằm sau phần tử chỉ định
following-siblingChọn tất cả anh chị em sau phần tử chỉ định
namespaceChọn tất cả namespace của phần tử chỉ định
parentChọn tất cả phần tử cha của phần tử chỉ định
precedingChọn tất cả các phần tử nằm trước phần tử chỉ định
preceding-siblingChọn tất cả anh chị em trước phần tử chỉ định
selfChọn phần tử chỉ định
Chia sẻ bài viết ngay

Nguồn bài viết : Viblo