Π ΡΠ²ΠΎΠ΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΠΏΠΎΡΡΠ΅ Ρ ΠΏΠΎΠΊΠ°Π·Π°Π», ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΡΠΈΠ½ΡΠΎΡ Ρ ΠΊΡΠΊΠ»ΠΎΠ²ΠΎΠ΄ΠΎΠΌ. Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Ρ ΡΠ°ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» Π²ΡΡΠΎΡΡ ΠΈ ΡΠΈΡΠΈΠ½Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°. ΠΠΎ Π΅ΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π²Π°ΡΠΈΠ°Π½Ρ: Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠ°ΠΆΠ°ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌ Ρ ΠΊΡΠΊΠ»ΠΎΠ²ΠΎΠ΄ΠΎΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΊΡΠΈΠ½ΡΠΎΡΡ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ Π²Π·ΡΡΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΏΠΎΡΡ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°, Π½ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π°Π³Π΅Π½Ρ ΡΡΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ Π²ΠΎΠ·ΡΠΌΠ΅ΡΠ΅ Π²Π΅Π± -ΡΡΡΠ°Π½ΠΈΡΡ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Π²Ρ Π±ΡΠ»ΠΈ Π½Π° ΡΡΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅.
const puppeteer = require('puppeteer');
// get the full list of available devices.
console.log(puppeteer.devices);
// ...
// let's emulate an iPhone 6
await page.emulate(puppeteer.devices['iPhone 6']);
// there are also devices in landscape mode
await page.emulate(puppeteer.devices['Pixel 2 landscape']);
ΠΠΎΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΠΎΠ΄ Ρ ΡΠΌΡΠ»ΡΡΠΈΠ΅ΠΉ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
// npm i puppeteer
const puppeteer = require('puppeteer');
// we're using async/await - so we need an async function, that we can run
const run = async () => {
// open the browser and prepare a page
const browser = await puppeteer.launch();
const page = await browser.newPage();
// it's better to emulate before going to the page, because otherwise a resize would happen
await page.emulate(puppeteer.devices['iPhone 6']);
await page.goto('https://codesnacks.net/');
await page.screenshot({
path: 'codesnacks.png',
fullPage: true,
});
// close the browser
await browser.close();
};
// run the async function
run();
ΠΡΠΈΠ³ΠΈΠ½Π°Π»: “https://dev.to/benjaminmock/more-on-screenshots-with-javascript-in-node-js-emulating-devices-2k4j”