CSS hay XPath cái nào nhanh hơn?

Mỗi năm, ngày càng có nhiều công ty bắt đầu sử dụng các công cụ quét web như một phần của phân tích và thông tin kinh doanh của họ. Điều này giúp các doanh nghiệp trở nên cạnh tranh hơn và có lợi hơn

Bạn phải luôn kiểm tra xem bạn có thể trích xuất dữ liệu từ một trang web hay không trước khi cạo. Dưới đây là danh sách kiểm tra có chứa 5 điều cần xem xét trước khi thực hiện quét web

Vì vậy, bạn đã tìm thấy một trang web mà bạn có thể cạo. Nhiều khả năng, bạn sẽ muốn trích xuất dữ liệu từ các phần tử HTML nhất định hoặc các phần tử có lớp hoặc ID cụ thể

Các chiến lược định vị nâng cao như bộ chọn CSS hoặc XPath đều có khả năng tìm thấy hầu hết mọi phần tử HTML trên trang web

Cascading Style Sheets [CSS] là ngôn ngữ biểu định kiểu được sử dụng để mô tả giao diện và định dạng của tài liệu được viết bằng HTML hoặc XML

Bộ chọn CSS là các mẫu được sử dụng để chọn [các] phần tử được tạo kiểu

XPath, ngôn ngữ đường dẫn XML, là ngôn ngữ truy vấn để chọn các nút từ tài liệu XML. Định vị các phần tử bằng XPath hoạt động rất tốt với rất nhiều tính linh hoạt

XPath sử dụng các biểu thức đường dẫn để điều hướng qua các phần tử và thuộc tính trong tài liệu XML

Kết quả cho chúng ta biết điều gì

Nhìn chung, Internet Explorer chậm hơn các trình điều khiển khác, nhưng giữa CSS và XPath, có vẻ như XPath thực sự nhanh hơn CSS. Chrome và Opera có một số điểm khác biệt, dù nhỏ hơn nhiều nhưng chúng lắc lư theo cả hai hướng. Trong một số trường hợp, CSS nhanh hơn và trong những trường hợp khác, XPath. Và Firefox có vẻ được tối ưu hóa hơn một chút cho CSS vì nó hầu như nhanh hơn trên bảng

GHI CHÚ. Opera 12. 16 đã được sử dụng vì đó là phiên bản được hỗ trợ cuối cùng trong dự án Selenium. Đó là vì họ đã chuyển sang sử dụng Chromium và bỏ hỗ trợ Selenium. Điều đó và Mozilla đã thuê nhà phát triển WebDriver duy nhất của Opera -- vì vậy, có điều đó

kết thúc

Ngay cả với những khác biệt về tốc độ này, chúng chỉ cách nhau vài giây [hoặc vài giây] -- và đó là cho 100 lần thực hiện. Khi bạn nghĩ về việc phải mất 30 giây trở lên để hoàn thành một lần chạy thử, thì sự khác biệt này là không đáng kể

Như tôi đã lưu ý trong mẹo trước, lựa chọn giữa CSS và XPath có thể là một lựa chọn khó thực hiện. Nhưng bây giờ bạn được trang bị quá nhiều dữ liệu để đưa ra lựa chọn cho chính mình. Đó thực sự chỉ là vấn đề tìm kiếm những gì phù hợp với bạn và nhóm của bạn và không bị đè nặng bởi sự cường điệu và ý kiến ​​​​xung quanh cái nào tốt hơn

Kiểm tra vui vẻ

Sự nhìn nhận

Tôi muốn gửi lời cảm ơn đến David Burns và Brian Goad. Họ đã giúp thực hiện mẹo này bằng cách mỗi người giúp đỡ theo cách riêng của họ. David vì phản hồi và hướng dẫn của anh ấy về cách thực hiện kiểm thử hiệu suất hiệu quả. Và Brian vì phản hồi, đề xuất và đóng góp mã của anh ấy. Cảm ơn bạn

Tại sao CSS nhanh hơn XPath?

Xpath cho phép luồng hai chiều, nghĩa là quá trình truyền tải có thể theo cả hai chiều từ cha mẹ đến con cái và cả con cái đến cha mẹ. Css chỉ cho phép một luồng có hướng, nghĩa là chỉ truyền từ cha sang con . Xpath chậm hơn về hiệu suất và tốc độ. Css có hiệu suất và tốc độ tốt hơn xpath.

Cái nào nhanh hơn giữa CSS hoặc XPath?

Về hiệu suất, css tốt hơn và nhanh hơn , trong khi xpath chậm hơn. Một xpath có thể có hai loại - tuyệt đối bắt đầu từ nút gốc và tương đối không yêu cầu bắt đầu từ gốc. Để đi qua phần tử thứ n, chúng ta phải đề cập đến [n] trong xpath, trong đó n là số chỉ mục.

CSS nhanh hơn XPath bao nhiêu?

Rõ ràng là thời gian cho mỗi lượt tìm kiếm khá gần nhau; . 32 mili giây 0.32 milliseconds . Đừng nhảy "bộ chọn XPath nhanh hơn" - đôi khi đúng như vậy, nhưng đôi khi đó là CSS. Hai bộ định vị lại giống nhau về mặt ngữ nghĩa - "tìm một phần tử div có thuộc tính lớp của nó là chuỗi con này". Một sự khác biệt của 0. 15 mili giây.

Trình định vị nào nhanh hơn trong Selenium CSS hoặc XPath?

ID locator trong Selenium là cách nhanh nhất và ưa thích nhất để định vị WebElements mong muốn trên trang. Bộ định vị ID Selenium là duy nhất cho từng phần tử trong DOM. Vì ID là duy nhất cho mỗi phần tử trên trang nên đây được coi là phương pháp nhanh nhất và an toàn nhất để xác định vị trí các phần tử.

Chủ Đề