如何使用Selenium Webdriver获取当前窗口大小?

Nik*_*ran 5 java selenium selenium-webdriver

我在屏幕分辨率(1366 X 768)上运行,但是当我调用"getSize().getWidth()"和"getSize().getHeight()"方法时,得到的结果是:宽度的大小是:1382高度大小为:IE,FF和Chrome网页为744.使用的网址:https://www.google.com

小智 6

因为知道selenium与浏览器交互,这些get方法将仅检索与浏览器相关的信息.正如其他答案所解释的那样,屏幕分辨率和浏览器不同.下面的简单示例非常清楚地表明webdriver只获取浏览器尺寸.

    WebDriver driver=new FirefoxDriver();
    driver.get("http://www.google.com");

    System.out.println(driver.manage().window().getSize()); //output: (994, 718)


    driver.manage().window().maximize();

    System.out.println(driver.manage().window().getSize()); //output: (1382, 744)
Run Code Online (Sandbox Code Playgroud)

谢谢你,穆拉利


Guy*_*Guy 5

屏幕分辨率和浏览器窗口大小不一定相等。

\n\n

分辨率(来自维基百科)是

\n\n
\n

数字电视、计算机显示器或显示设备的显示分辨率或显示模式是可以显示的每个维度中不同像素的数量...“1024 \xc3\x97 768”表示宽度为 1024 像素高度为 768 像素

\n
\n\n

whilegetSize()返回实际的浏览器大小。

\n


Eya*_*man 5

    Dimension initial_size = driver.manage().window().getSize();
    int height = initial_size.getHeight();
    int width = initial_size.getWidth();
Run Code Online (Sandbox Code Playgroud)

  • 嗨,埃亚尔·苏利曼;您的代码可能是正确的,但在某些上下文中它会给出更好的答案;例如,您可以解释此提议的更改将如何以及为何解决提问者的问题,也许包括相关文档的链接。这将使它对他们更有用,对其他正在寻找类似问题解决方案的网站读者也更有用。 (2认同)

And*_*yko 5

对于python selenium webdriver 使用函数get_window_size

driver.get_window_size()
"""
Output:
{
  "width": 1255,
  "height": 847,
  "hCode": 939524096,
  "class": "org.openqa.selenium.Dimension"
}
"""
Run Code Online (Sandbox Code Playgroud)