Подтвердить что ты не робот

Как я могу контролировать размер открытого окна Chromedriver?

Я использую Selenium WebDriver для автоматизации, и я использую Chromedriver.

Я заметил, что когда мой драйвер запускается и открывает браузер Chrome, он открывает браузер странным размером. Я попытался исправить это, но тщетно.

Кто-нибудь знает, как я могу его изменить?

4b9b3361

Ответ 1

Я знаю, что это старая нить, но не все выше сказанное работало для меня. Я использую

chrome = 57.0.2987.133
chromedriver = 2.27.440174

И это сработало для меня:

from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_argument("--window-size=1920,1080")
driver = Chrome(chrome_options=chrome_options)

Ответ 2

Используйте это для своего нестандартного размера:

driver.manage().window().setSize(new Dimension(1024,768));

вы можете изменить свои размеры так же, как и ваши требования.

Ответ 3

попробуй это

using System.Drawing;
driver.Manage().Window.Size = new Size(width, height);

Ответ 4

Версия С# ответа @yonatan-kiron и инструкция Selenium using из их кода примера.

ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.AddArgument("--window-size=1300,1000");

using (IWebDriver driver = new ChromeDriver(chromeOptions))
{
    ...
}

Ответ 5

#use chrome webdriver
driver = webdriver.Chrome('path to /chromedriver') driver.set_window_size(1400,1000)

Ответ 6

Попробуйте с driver.manage.window.maximize();, чтобы увеличить окно.

Ответ 7

Если вы используете привязку к языку Facebook для php, попробуйте это:

$driver->manage()->window()->setSize(new WebDriverDimension(1024,768));

Ответ 8

В java/ groovy попробуйте:

import java.awt.Toolkit;
import org.openqa.selenium.Dimension;         
import org.openqa.selenium.Point;

...

java.awt.Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

Dimension maximizedScreenSize = new Dimension((int) screenSize.getWidth(), (int) screenSize.getHeight());
driver.manage().window().setPosition(new Point(0, 0));
driver.manage().window().setSize(maximizedScreenSize);

это откроет браузер в полноэкранном режиме

Ответ 9

Если вы используете Clojure и https://github.com/semperos/clj-webdriver, вы можете использовать этот фрагмент для изменения размера браузера.

(require '[clj-webdriver.taxi :as taxi])

; Open browser
(taxi/set-driver! {:browser :chrome} "about:blank")

; Resize browser
(-> taxi/*driver* (.webdriver) (.manage) (.window) 
  (.setSize (org.openqa.selenium.Dimension. 0 0)))

Ответ 10

Используйте Dimension Class для управления размером окна.

Dimension d = new Dimension(1200,800);  //(x,y coordinators in pixels) 
driver.manage().window().setSize(d);

Ответ 11

Рубиновая версия:

caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"args"=> ["--window-size=1280,960"]})

url = "http://localhost:9515"  # if you are using local chrome or url = Browserstack/ saucelabs hub url if you are using cloud service providers.

 Selenium::WebDriver.for(:remote, :url => url, :desired_capabilities => caps)

Изменить размер хрома в багги последних хромированных рекордов, он прерывается с этим сообщением об ошибке.

                        unknown error: cannot get automation extension
from timeout: cannot determine loading status
from timeout: Timed out receiving message from renderer: -65.294
  (Session info: chrome=56.0.2924.76)
  (Driver info: chromedriver=2.28.455517 (2c6d2707d8ea850c862f04ac066724273981e88f)

И resizeTo через javascript также не поддерживается для chrome, запущенного через selenium webdriver. Таким образом, последний вариант - это использовать ключи командной строки.

Ответ 12

Следующие опции хрома помогли мне без хрома:

В ЯВА:

ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--window-size=1920,1080");
chromeOptions.setHeadless(true);
driver = new ChromeDriver(chromeOptions);
driver.get("your-site");
driver.manage().window().maximize();

селен-ява: 3.8.1

Хромедрайвер: 2,43

Хром: v69-71

Ответ 13

РУБИН


Подход № 1

options = {
      'chromeOptions' => {
          'args' => ['start-fullscreen']
      }
  }

caps = Selenium::WebDriver::Remote::Capabilities.chrome(options)
@driver = Selenium::WebDriver.for :chrome, desired_capabilities: caps

Подход № 2

options = {
      'chromeOptions' => {
          'args' => ['window-size=640,480']
      }
  }

caps = Selenium::WebDriver::Remote::Capabilities.chrome(options)
@driver = Selenium::WebDriver.for :chrome, desired_capabilities: caps

Подход № 3

max_width, max_height = @driver.execute_script("return [window.screen.availWidth, window.screen.availHeight];")
@driver.manage.window.resize_to(max_width, max_height)

Подход № 4

@driver.manage.window.maximize

Подход № 5

target_size = Selenium::WebDriver::Dimension.new(1600, 1268)
@driver.manage.window.size = target_size

Подход № 6

@driver.manage.window.resize_to(640, 480)

Подход № 7

@driver.execute_script("window.resizeTo(640, 480);")

Ответ 14

Используйте это:

driver.manage().window().setSize(new Dimension(1920,1080));