我正在尝试自动化Instagram网站,当我点击关注者链接时,它会打开一个对话框,供用户关注。当我试图滚动那个对话框时,它滚动的是主页,而不是关注者对话框。如何做到这一点?
我试过使用代码
WebElement element = driver.findElement(By.cssSelector("div.pbNvD.fPMEg.HYpXt"));
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollBy(0,1000)",element);
尝试以下两种方式向上滚动:
WebElement element = driver.findElement(By.cssSelector("div.pbNvD.fPMEg.HYpXt"));
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].scrollTop(100)",element);
或
js.executeScript("$('div.pbNvD.fPMEg.HYpXt').scrollTop(100)");
您也可以尝试以下代码向下滚动模式对话框:
// Wait for modal
WebDriverWait(driver, 5).until(ExpectedConditions.visibilityOfElementLocated(By.id("document-content")));
// Select last child of content div
WebElement element = driver.findElement(By.xpath("//div[@id='document-content']/*[last()]"));
// Scroll to last child node
((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", element);