Можно ли изменить размер окна браузера с помощью кукловода? Я знаю, что есть page.setViewport
, но есть ли что-то вроде browser.setViewport
? Может быть, это звучит так, как будто нет никакой разницы, если вы используете версию без головок, но может быть полезно, если вы на самом деле показываете окно, я бы хотел сделать что-то вроде этого:
const puppeteer = require("puppeteer");
(async () => {
let browser = await puppeteer.launch({
headless: false
});
await browser.setViewport({
width: 100,
height: 100,
});
})();
То, что я нашел, работает для установки размера браузера (но не размера видового экрана), чтобы установить следующий переключатель командной строки chrome при запуске кукольника:
await puppeteer.launch({
headless: false,
args: [
'--window-size=X,Y'
]
});
Все, что вам нужно сделать, это заменить любые настройки разрешения, которые вы хотите использовать в коде вместо X (ширина) и Y (высота).
Обновить:
С тех пор я обнаружил следующую проблему, в которой кто-то, скорее, resizeWindow()
, предоставил собственную resizeWindow()
которая, по-видимому, делает то, что вам нужно. Я не пробовал, поэтому не могу ручаться за то, работает ли это или нет, но, возможно, стоит попробовать!
Я смог изменить размер браузера, установив точку обзора, когда я запускаю браузер как таковой:
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({headless: false, defaultViewport: {width:1200,height:600}});
const page = await browser.newPage();
await page.goto('http://howbigismybrowser.com/');
})();
Короткий ответ: Нет, вы не можете изменять размер
Это все, что вы можете сделать в browser
:
browser.browserContexts()
browser.close()
browser.createIncognitoBrowserContext()
browser.disconnect()
browser.newPage()
browser.pages()
browser.process()
browser.targets()
browser.userAgent()
browser.version()
browser.wsEndpoint()
И он испускает эти события:
'disconnected'
'targetchanged'
'targetcreated'
'targetdestroyed'
Изменение размера не входит в список. Возможно, вы можете попробовать создать запрос функции.
resizeWindow()
которая, по-видимому, делает именно это. Лично я не пробовал, но вам может быть интересно!