XPath cơ bản

Người tạo: Akabot Support, Đã sửa đổi vào Wed, 19 Tháng 11 lúc 2:06 CH bởi Akabot Support

Hiểu biết cơ bản về XPath

1. XPath là gì

  • XPath (XML Path Language) là một ngôn ngữ dùng để xác định các phần cụ thể trong tài liệu XML.

  • HTML cũng có thể sử dụng XPath để xác định các phần tử.

  • Trong Akabot, XPath được sử dụng để xác định các phần tử giao diện người dùng (UI) để thao tác trong các hoạt động liên quan đến trình duyệt.

Hãy nghĩ XPath như một bản đồ dẫn đến các phần tử trên trang web hoặc cấu trúc XML.


2. Cú pháp XPath

  • XPath coi tài liệu như một cây, nơi các phần tử và thuộc tính được kết nối như các nhánh.

  • Cấu trúc cơ bản: / dùng để phân tách các phần tử, tương tự như đường dẫn URL.

Lấy XPath trên Google Chrome

Sử dụng Developer Tools (Công cụ dành cho nhà phát triển) tích hợp sẵn trong Chrome, ta có thể lấy XPath xác định phần "Knowledge Base" trên trang Akabot Portal.

  1. Mở trang đầu của Akabot Portal trên Chrome.

  2. Nhấp chuột phải vào phần "Knowledge Base", chọn Inspect.

  3. Developer Tools sẽ hiện ra, phần tử Knowledge Base được bôi xanh. Nhấp chuột phải vào phần này.

  4. Chọn Copy > Copy XPath để sao chép XPath vào clipboard.

Lưu ý: Developer Tools có thể hiển thị ở bên trái, dưới cùng hoặc cửa sổ riêng, tùy cài đặt. Muốn hiển thị ở bên phải, nhấp vào biểu tượng Customize and control DevTools ở góc trên bên phải của Developer Tools, chọn Dock side > Dock to bottom.

Kiểm tra XPath đã lấy

Dán XPath vừa sao chép vào Notepad hoặc trình soạn thảo khác. Ví dụ:
//*[@id="custom-blocks"]/div/div/div[2]/a 

Đây là XPath đơn giản hóa.
Cấu trúc cây của HTML:

css

Copy code

/html/body/div[2]/div[1]/div/div/div[2]/a

Ý nghĩa: phần tử <a> bên trong <div> thứ hai, trực thuộc <body> dưới <html>, v.v.

Lưu ý: Có thể lấy XPath đầy đủ bằng cách chọn Copy > Copy full XPath.


Cú pháp XPath đơn giản

Ví dụ:

//*[@id="custom-blocks"]/div/div/div[2]/a 

  • // → tìm tất cả các phần tử con.

  • → mọi phần tử con. //* → mọi phần tử trong tài liệu.
  • @ → dùng để chỉ thuộc tính.

  • = → bằng, không phải phép gán.

  • [  ]→ dùng để viết điều kiện, ví dụ [id="custom-blocks"] nghĩa là phần tử có id="custom-blocks".

  • / → phần tử trực tiếp con.

XPath thu được //*[@id="custom-blocks"]/div/div/div[2]/a  chỉ định "phần tử a được bao quanh bởi phần tử div ngay bên dưới phần tử có thuộc tính id là 'custom-blocks'".

Bài viết này có hữu ích không?

Thật tuyệt!

Cám ơn phản hồi của bạn

Rất tiếc là chúng tôi không giúp được nhiều!

Cám ơn phản hồi của bạn

Hãy cho chúng tôi biết làm thế nào chúng tôi có thể cải thiện bài viết này!

Chọn ít nhất một trong những lý do
Yêu cầu xác minh CAPTCHA.

Đã gửi phản hồi

Chúng tôi đánh giá cao nỗ lực của bạn và sẽ cố gắng sửa bài viết