So scrollen Sie nach unten oder oben Selenium Webtreiber
โก Intelligente Zusammenfassung
Scrollen einer Seite in Selenium WebDriver verwendet den JavascriptExecutor-Schnittstelle zum Ausfรผhren JavaScrollbefehle werden per Skript ausgefรผhrt, da WebDriver das DOM direkt manipuliert. Vier praktische Szenarien decken das Scrollen pixelweise, zu einem Element, zum Seitenende und horizontal ab.

Scrollen Sie hinein Selenium
Zum Scrollen mit Selenium, Sie kรถnnen JavaScriptExecutor-Schnittstelle, die bei der Ausfรผhrung hilft JavaSkriptmethoden durch Selenium Webtreiber
Syntax:
JavascriptExecutor js = (JavascriptExecutor) driver; js.executeScript(Script,Arguments);
- Skript โ Dies ist das JavaSkript, das ausgefรผhrt werden muss.
- Argumente โ Dies sind die Argumente fรผr das Skript. Es ist optional.
Was ist eine Scrollbar?
Mit einer Bildlaufleiste kรถnnen Sie sich horizontal oder vertikal auf dem Bildschirm bewegen, wenn der aktuelle Bildlauf nicht in den sichtbaren Bereich des Bildschirms passt. Es wird verwendet, um das Fenster nach oben und unten zu bewegen.
Selenium Webdriver erfordert kein Scrollen, um Aktionen auszufรผhren, da er das DOM manipuliert. Auf bestimmten Webseiten werden Elemente jedoch erst sichtbar, wenn der Benutzer zu ihnen gescrollt hat. In solchen Fรคllen kann ein Scrollen erforderlich sein.
Es gibt zwei Arten von Bildlaufleisten: Horizontale und vertikal Scrollen Sie durch die Bildlaufleiste, wie im folgenden Screenshot gezeigt.
Selenium Skript zum Scrollen auf der Seite nach unten
Sehen wir uns das Scrollen nach unten auf einer Webseite mit dem Selenium-Webtreiber in den folgenden vier Szenarien an:
- Szenario 1: Die Webseite pixelweise nach unten scrollen.
- Szenario 2: Scrollen Sie auf der Webseite entsprechend der Sichtbarkeit des Elements nach unten.
- Szenario 3: Scrollen Sie auf der Webseite am Ende der Seite nach unten.
- Szenario 4: Horizontales Scrollen auf der Webseite.
Szenario 1: Die Webseite pixelweise nach unten scrollen.
Selenium Skript
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("https://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)"); } }
Skript DescriptIonIm obigen Code starten wir zuerst die gegebene URL Im Chrome-Browser. Als Nรคchstes die Seite mithilfe von executeScript um 1000 Pixel scrollen. Javascript Die Methode ScrollBy() scrollt die Webseite auf die angegebene Pixelanzahl.
Die Syntax der ScrollBy()-Methoden lautet:
executeScript("window.scrollBy(x-pixels,y-pixels)");
x-Pixel ist die Zahl auf der x-Achse, sie bewegt sich nach links, wenn die Zahl positiv ist, und sie bewegt sich nach rechts, wenn die Zahl negativ ist. y-Pixel ist die Zahl auf der y-Achse, sie bewegt sich nach unten, wenn die Zahl negativ ist positiv und es bewegt sich nach oben, wenn die Zahl negativ ist.
Ejemplo:
js.executeScript("window.scrollBy(0,1000)"); //Scroll vertically down by 1000 pixels
Ausgabeanalyse: Hier ist die Ausgabe, wenn Sie das obige Skript ausfรผhren.
Szenario 2: Scrollen Sie auf der Webseite entsprechend der Sichtbarkeit des Elements nach unten.
Selenium Skript
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("https://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); } }
Skript DescriptIon: Im obigen Code starten wir zuerst die angegebene URL im Chrome-Browser. Scrollen Sie anschlieรend die Seite, bis das erwรคhnte Element auf der aktuellen Seite sichtbar ist. Javascript Die Methode scrollIntoView() scrollt die Seite, bis das genannte Element vollstรคndig angezeigt wird:
js.executeScript("arguments[0].scrollIntoView();",Element );
โarguments[0]โ bedeutet erster Index der Seite beginnend bei 0.
Wobei ein โElementโ der Locator auf der Webseite ist.
Ausgabeanalyse: Hier ist die Ausgabe, wenn Sie das obige Skript ausfรผhren.
Szenario 3: Scrollen Sie auf der Webseite am Ende der Seite nach unten.
Selenium Skript
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("https://demo.guru99.com/test/guru99home/"); //This will scroll the web page till end. js.executeScript("window.scrollTo(0, document.body.scrollHeight)"); } }
Skript Description: Im obigen Code starten wir zuerst die angegebene URL im Chrome-Browser. Scrollen Sie anschlieรend bis zum Ende der Seite. Javascript Methode scrollTo() scrollt bis zum Ende der Seite.
js.executeScript("window.scrollTo(0, document.body.scrollHeight)");
โdocument.body.scrollHeightโ gibt die vollstรคndige Hรถhe des Kรถrpers, also der Webseite, zurรผck.
Ausgabeanalyse: Hier ist die Ausgabe, wenn Sie das obige Skript ausfรผhren.
Szenario 4: Horizontales Scrollen auf der Webseite
Selenium Skript
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 HorizontalScroll { WebDriver driver; @Test public void ScrollHorizontally() { System.setProperty("webdriver.chrome.driver", "E://Selenium//Selenium_Jars//chromedriver.exe"); driver = new ChromeDriver(); JavascriptExecutor js = (JavascriptExecutor) driver; // Launch the application driver.get("https://demo.guru99.com/test/guru99home/scrolling.html"); WebElement Element = driver.findElement(By.linkText("VBScript")); //This will scroll the page Horizontally till the element is found js.executeScript("arguments[0].scrollIntoView();", Element); } }
Skript Description: Im obigen Code starten wir zuerst die angegebene URL im Chrome-Browser. Scrollen Sie anschlieรend horizontal durch die Seite, bis das erwรคhnte Element auf der aktuellen Seite sichtbar ist. Javascript Die Methode scrollIntoView() scrollt die Seite, bis das genannte Element vollstรคndig angezeigt wird:
js.executeScript("arguments[0].scrollIntoView();",Element );
Ausgabeanalyse: Hier ist die Ausgabe, wenn Sie das obige Skript ausfรผhren.
Mehr รผber erfahren JavaSkriptExecutor






