设置PhantomJS C#中的屏幕尺寸由Selenium驱动

Joh*_*ohn 4 c# selenium webdriver phantomjs selenium-webdriver

如何设置浏览器屏幕大小?当我将PhantomJS设置为低于其仅显示400px宽图像时拍摄屏幕截图.

var driverService = PhantomJSDriverService.CreateDefaultService();
driverService.HideCommandPromptWindow = true;
driverService.LoadImages = false;
driverService.ProxyType = "none";      

using (var driver = new PhantomJSDriver(driverService))
{
    etc....
}
Run Code Online (Sandbox Code Playgroud)

Yi *_*eng 10

它应该与在任何其他浏览器中设置窗口大小相同,请随意查看此示例:如何使用Selenium WebDriver获取窗口大小,调整窗口大小或最大化窗口.

以下是为我工作的测试代码:

var driverService = PhantomJSDriverService.CreateDefaultService();
driverService.HideCommandPromptWindow = true;
driverService.LoadImages = false;
driverService.ProxyType = "none";

using (var driver = new PhantomJSDriver(driverService)) {
    driver.Manage().Window.Size = new Size(1920, 1080); // Size is a type in assembly "System.Drawing"
    driver.Url = "http://www.stackoverflow.com";
    driver.TakeScreenshot().SaveAsFile(@"c:\phantomjs_screenshot.png", ImageFormat.Png);
}
Run Code Online (Sandbox Code Playgroud)

  • `TakeScreenshot`方法在更高版本中已更改为`GetScreenshot` (2认同)