selenium - 浏览器无头时滑块不移动
问题描述
当 chrome 处于无头模式时,滑块不会向右移动。我已经尝试了所有这些但没有成功。请让我知道还能做什么?
<div class="noUi-handle noUi-handle-lower" data-handle="0" tabindex="0" role="slider" aria-orientation="horizontal" aria-valuemin="0.0" aria-valuemax="100.0" aria-valuenow="0.0" aria-valuetext="0.00"><div class="noUi-tooltip">undefined</div></div>
@FindBy(how = How.XPATH, using = "//div[@role='slider']")
public WebElement someslider;
Actions action = new Actions(driver);
action.dragAndDropBy(someslider, 200, 100).perform();
action.clickAndHold(someslider).moveByOffset(200,100).release(someslider).release().build().perform();
int x=10;
int width=someslider.getSize().getWidth();
action.dragAndDropBy(someslider, ((width*x)/100), 0);
action.build().perform();
action.clickAndHold().dragAndDropBy(someslider, 200, 100).build().perform();
也试过
((JavascriptExecutor) driver).executeScript("document.getElementsByClassName('noUi-handle noUi-handle-lower').setAttribute('aria-valuetext', '5.00')");
我的浏览器配置
if (Hooks.environmentConfigurations.isHeadlessMode()) {
chromeOptions.addArguments("--headless", "window-size=1400,600");
chromeOptions.setPageLoadStrategy(PageLoadStrategy.NONE);
chromeOptions.addArguments("--no-sandbox");
chromeOptions.addArguments("--disable-infobars");
chromeOptions.addArguments("--disable-dev-shm-usage");
chromeOptions.addArguments("--disable-browser-side-navigation");
chromeOptions.addArguments("--disable-gpu");
}
解决方案
将窗口大小更改为 window-size=1600,800 并且可以正常工作
推荐阅读
- java - Java中带有套接字的多线程服务器和客户端
- python - “groupby”返回基于特定条件的发生百分比
- python - 在 Chrome 中使用 Selenium 和 Python 单击“下载”按钮并下载 PDF
- sql - 使用where子句查询两张表的结果
- python - 我使用 pip 安装了熊猫,但是当我尝试运行它时,我得到了 ModuleNotFoundError
- python - 将张量元组传递给多个损失函数时,Tensorflow/keras 仅使用 .fit 传递元组中的一个张量
- python - 如何修剪 f 字符串中的空格?
- python - 有没有办法从域中获取页面标题和 http 状态代码?
- javascript - Vue @change 事件不起作用
- python - 如果字符串包含 PySpark 中的某些子字符串,则替换字符串