Làm cách nào để cuộn lên trong selen python?

Để cuộn bằng Selenium, bạn có thể sử dụng giao diện JavaScriptExecutor giúp thực thi các phương thức JavaScript thông qua Selenium Webdriver

cú pháp

JavascriptExecutor js = [JavascriptExecutor] driver;  
   js.executeScript[Script,Arguments];
  • Script – Đây là JavaScript cần thực thi
  • Đối số - Đó là đối số cho tập lệnh. Đó là tùy chọn

Trong hướng dẫn Scroll in Selenium này, bạn sẽ học

  • Cuộn trong Selenium
  • cảnh 1. Để cuộn xuống trang web theo pixel
  • kịch bản 2. Để cuộn xuống trang web theo khả năng hiển thị của phần tử
  • kịch bản 3. Để cuộn xuống trang web ở cuối trang
  • Tình huống 4. Cuộn ngang trên trang web
  • Thanh cuộn là gì?

Selenium Script để cuộn xuống trang

Hãy cùng xem scroll down một trang web bằng Selenium webdriver với 4 tình huống sau

  • cảnh 1. Để cuộn xuống trang web theo pixel
  • kịch bản 2. Để cuộn xuống trang web theo khả năng hiển thị của phần tử
  • kịch bản 3. Để cuộn xuống trang web ở cuối trang
  • Tình huống 4. Cuộn ngang trên trang web

cảnh 1. Để cuộn xuống trang web theo pixel

Tập lệnh Selenium

import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;

public class ScrollByPixel {

    WebDriver driver;
    @Test
    public void ByPixel[] {
        System.setProperty["webdriver.chrome.driver", "E://Selenium//Selenium_Jars//chromedriver.exe"];
        driver = new ChromeDriver[];

        JavascriptExecutor js = [JavascriptExecutor] driver;

        // Launch the application		
        driver.get["//demo.guru99.com/test/guru99home/"];

        //To maximize the window. This code may not work with Selenium 3 jars. If script fails you can remove the line below		
        driver.manage[].window[].maximize[];

        // This  will scroll down the page by  1000 pixel vertical		
        js.executeScript["window.scrollBy[0,1000]"];
    }
}

Mô tả kịch bản. Trong đoạn mã trên, trước tiên, chúng tôi khởi chạy URL đã cho trong trình duyệt Chrome. Tiếp theo, cuộn trang theo 1000 pixel thông qua execScript. Phương thức Javascript ScrollBy[] cuộn trang web đến số pixel cụ thể

Cú pháp của các phương thức ScrollBy[] là

executeScript["window.scrollBy[x-pixels,y-pixels]"];

x-pixel là số ở trục x, nó di chuyển sang trái nếu số dương và nó di chuyển sang phải nếu số âm. y-pixel là số ở trục y, nó di chuyển xuống dưới nếu số dương và di chuyển lên trên nếu số âm


Thí dụ.
js.executeScript["window.scrollBy[0,1000]"]; //Scroll vertically down by 1000 pixels

phân tích đầu ra. Đây là kết quả khi bạn thực thi đoạn script trên

kịch bản 2. Để cuộn xuống trang web theo khả năng hiển thị của phần tử

Tập lệnh Selenium

import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;

public class ScrollByVisibleElement {

    WebDriver driver;
    @Test
    public void ByVisibleElement[] {
        System.setProperty["webdriver.chrome.driver", "G://chromedriver.exe"];
        driver = new ChromeDriver[];
        JavascriptExecutor js = [JavascriptExecutor] driver;

        //Launch the application		
        driver.get["//demo.guru99.com/test/guru99home/"];

        //Find element by link text and store in variable "Element"        		
        WebElement Element = driver.findElement[By.linkText["Linux"]];

        //This will scroll the page till the element is found		
        js.executeScript["arguments[0].scrollIntoView[];", Element];
    }
}

Mô tả kịch bản. Trong đoạn mã trên, trước tiên chúng tôi khởi chạy url đã cho trong trình duyệt Chrome. Tiếp theo, cuộn trang cho đến khi phần tử được đề cập hiển thị trên trang hiện tại. Phương thức Javascript scrollIntoView[] cuộn trang cho đến khi phần tử được đề cập ở chế độ xem đầy đủ

js.executeScript["arguments[0].scrollIntoView[];",Element ];

“arguments[0]” có nghĩa là chỉ mục đầu tiên của trang bắt đầu từ 0

Trong đó một " Phần tử " là công cụ định vị trên trang web


phân tích đầu ra. Đây là kết quả khi bạn thực thi đoạn script trên

kịch bản 3. Để cuộn xuống trang web ở cuối trang

Tập lệnh Selenium

import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;

public class ScrollByPage {

    WebDriver driver;
    @Test
    public void ByPage[] {
        System.setProperty["webdriver.chrome.driver", "E://Selenium//Selenium_Jars//chromedriver.exe"];
        driver = new ChromeDriver[];

        JavascriptExecutor js = [JavascriptExecutor] driver;

        // Launch the application		
        driver.get["//demo.guru99.com/test/guru99home/"];

        //This will scroll the web page till end.		
        js.executeScript["window.scrollTo[0, document.body.scrollHeight]"];
    }
}

Mô tả kịch bản. Trong đoạn mã trên, trước tiên chúng tôi khởi chạy url đã cho trong trình duyệt Chrome. Tiếp theo, cuộn đến cuối trang. Phương thức Javascript scrollTo[] cuộn đến cuối trang

js.executeScript["window.scrollTo[0, document.body.scrollHeight]"];

"tài liệu. thân hình. scrollHeight” trả về chiều cao đầy đủ của phần thân tôi. trang web điện tử

phân tích đầu ra. Đây là kết quả khi bạn thực thi đoạn script trên

Tình huống 4. Cuộn ngang trên trang web

Tập lệnh Selenium

________số 8

Mô tả kịch bản. Trong đoạn mã trên, trước tiên chúng tôi khởi chạy url đã cho trong trình duyệt Chrome. Tiếp theo, cuộn trang theo chiều ngang cho đến khi phần tử được đề cập hiển thị trên trang hiện tại. Phương thức Javascript scrollIntoView[] cuộn trang cho đến khi phần tử được đề cập ở chế độ xem đầy đủ

js.executeScript["arguments[0].scrollIntoView[];",Element ];

phân tích đầu ra. Đây là kết quả khi bạn thực thi đoạn script trên

Tìm hiểu thêm về JavaScriptExecutor

Thanh cuộn là gì?

Thanh cuộn là một thanh cho phép bạn di chuyển xung quanh màn hình theo hướng ngang hoặc dọc nếu cuộn trang hiện tại không vừa với vùng hiển thị của màn hình. Nó được sử dụng để di chuyển cửa sổ lên và xuống

Selenium Webdriver không yêu cầu cuộn để thực hiện các hành động vì nó thao tác với DOM. Nhưng trong một số trang web nhất định, các thành phần chỉ hiển thị khi người dùng đã cuộn đến chúng. Trong những trường hợp như vậy, việc cuộn có thể cần thiết

Chủ Đề