Chúng ta có thể lấy nguồn html của một webelement với Selenium webdriver. Chúng ta có thể lấy thuộc tính InternalHTML để lấy nguồn của phần tử web
InternalHTML là một thuộc tính của phần tử web tương đương với văn bản hiện diện giữa thẻ bắt đầu và thẻ kết thúc. Phương thức get_attribute được sử dụng cho việc này và InternalHTML được truyền dưới dạng đối số cho phương thức
cú pháp
s = element.get_attribute['innerHTML']
Chúng tôi có thể lấy nguồn html của webelement với sự trợ giúp của Javascript Executor. Chúng ta sẽ sử dụng phương thức exec_script và truyền đối số index. innerHTML và phần tử web có nguồn html sẽ được truy xuất về phương thức
cú pháp
s = driver.find_element_by_id["txt-search"] driver.execute_script["return arguments[0].innerHTML;",s]
Hãy cho chúng tôi xem mã html dưới đây của một phần tử. InternalHTML của phần tử sẽ là - Bạn đang duyệt tài nguyên tốt nhất cho Giáo dục trực tuyến
Chúng ta có thể lấy mã html của một webelement với sự trợ giúp của Selenium webdriver. Chúng ta có thể lấy thuộc tính innerHTML để lấy nội dung HTML của phần tử web
InternalHTML là một thuộc tính của phần tử web tương đương với nội dung hiện diện giữa thẻ bắt đầu và thẻ kết thúc. Phương thức getAttribute được sử dụng cho việc này và InternalHTML được truyền dưới dạng đối số cho phương thức
cú pháp
String s = element.getAttribute['innerHTML'];
Hãy cho chúng tôi xem mã html dưới đây của một phần tử. InternalHTML của phần tử sẽ là < Bạn đang duyệt tài nguyên tốt nhất cho Giáo dục trực tuyến
HTML sử dụng các thẻ để hiển thị các thành phần trên trang web. Mỗi phần tử sẽ chứa thẻ bắt đầu và thẻ kết thúc tương ứng. Mỗi thẻ hiển thị phần tử trên trang web theo cách khác nhau tùy thuộc vào đặc điểm của nó. Mỗi phần tử sẽ chứa các thuộc tính và thuộc tính là công cụ sửa đổi của loại phần tử HTML. Một thuộc tính sửa đổi chức năng mặc định của một loại phần tử hoặc cung cấp chức năng cho một số loại phần tử không thể hoạt động chính xác nếu không có chúng. Theo cú pháp HTML, một thuộc tính được thêm vào thẻ bắt đầu HTML
Dưới đây là mã HTML mẫu
HTML Internal CSS .red{ color: red; } .thick{ font-size:20px; } .green{ color:green; }This is red
This is thick
This is green
This is thick and green
Dưới đây là đầu ra của Mã trên
Trong chương trình trên, tất cả các giá trị/văn bản mà chúng ta đặt trong các ký hiệu “” này được gọi là thẻ bắt đầu và trong “” này được gọi là thẻ kết thúc. html, head, title, style và p là các thẻ trong chương trình trên. Html là thẻ bắt đầu trong bất kỳ tài liệu nào và đây được gọi là thẻ gốc
Thẻ ‘p’ chứa một thuộc tính gọi là ‘class’. Thuộc tính này sẽ cung cấp thêm thông tin về thẻ. Và nó sẽ áp dụng một số kiểu dáng cho phần tử sẽ hiển thị trên trang web. Trong khi xác định phần tử trong selen, các thuộc tính này cũng rất hữu ích để xác định các phần tử duy nhất
Những điểm cần nhớ
- Mỗi thẻ sẽ có thẻ bắt đầu và thẻ kết thúc
- Mỗi thẻ có thể chứa cha hoặc không
- Mỗi thẻ có thể chứa con hoặc không
- Mỗi thẻ có thể chứa cháu hoặc không
- Mỗi thẻ có thể chứa ông bà hoặc không
Những mối quan hệ này cũng sẽ hữu ích để xác định các yếu tố
Trong đoạn mã trên
- html là thẻ gốc
- head là thẻ con của HTML
- body cũng là thẻ con của HTML
- thân và đầu là anh em và thẻ con của HTML
- p là thẻ con của thẻ body
- body là thẻ cha của p
- html là cha của thẻ p
- thẻ p là cháu của thẻ html
- lớp là một thuộc tính cho thẻ p
Dưới đây là các Thành phần mẫu mà chúng tôi thấy trên bất kỳ trang web nào
- Hộp văn bản
- Vùng văn bản
- Cái nút
- Nút radio
- hộp kiểm
- Hình ảnh
- thả xuống
- Danh sách thả xuống đã chọn
- WebBảng
- khung
- DatePickers, v.v.
Để có được các phần tử này trên trang web, trên phần phụ trợ, chúng tôi sẽ viết các thẻ tương ứng. Để áp dụng các kiểu, chúng tôi sẽ sử dụng các thuộc tính cho từng thẻ
Chúng ta cần nói về một trong những thuộc tính được gọi là ID, thuộc tính duy nhất cho mỗi thẻ. Nếu mọi thẻ đều có ID thì dễ dàng xác định phần tử bằng thuộc tính này. Tuy nhiên, luôn luôn tất cả các phần tử sẽ không có ID; . Các thuộc tính còn lại có thể là duy nhất hoặc có thể không. Trong đoạn mã trên tất cả các thẻ P đều có thuộc tính lớp nên chúng ta không thể phụ thuộc vào thuộc tính lớp