Felhasználói eszközök

Eszközök a webhelyen


oktatas:web:puppeteer

< Web

Puppeteer

Webhely

Telepítés

npm install puppeteer

Példa

test/test01.js
const puppeteer = require('puppeteer');
 
(async () => {
    const browser = await puppeteer.launch();
    const page = await browser.newPage();
 
    await page.goto('https://szit.hu/');
 
    await page.type('#qsearch__in', 'Programozás');
    await page.click('button[type="submit"]');
 
    await page.waitForSelector('body');
 
    const content = await page.content();
    const containsProgramming = content.includes('programozas');
 
    if (containsProgramming) {
        console.log('Az oldal tartalmazza a "programozas" szót.');
    } else {
        console.log('Az oldal nem tartalmazza a "programozas" szót.');
    }
 
    await browser.close();
})();

Indítás böngésző fejjel

Szeretnénk látni a böngészőt 5 másodpercig. Letiltjuk a fej nélküli indítást:

test/valami.js
const puppeteer = require('puppeteer');
 
(async () => {
    const browser = await puppeteer.launch({headless: false});
    const page = await browser.newPage();
 
    await page.goto('https://szit.hu/');
 
    await new Promise(resolve => setTimeout(resolve, 5000));
    await browser.close();
})();

Képernyőkép

test/valami.js
const puppeteer = require('puppeteer');
 
(async () => {
    const browser = await puppeteer.launch({headless: false});
    const page = await browser.newPage();
 
    await page.goto('https://szit.hu/');
 
    await page.screenshot({ path: 'szit.png', fullPage: true});
    await page.pdf({ path: 'szit.pdf', format: 'A4'});
 
    await browser.close();
})();

Használat Mocha mellett

npm install --save-dev mocha
test/valami.js
const puppeteer = require('puppeteer');
const assert = require('assert');
 
describe('Teszt', function()  {
    let browser;
    let page;
    before(async function() {
        browser = await puppeteer.launch({headless: true});
        page = await browser.newPage();
    });
    after(async function() {
        await browser.close();
    });
    it('Az oldalra navigálunk', async function() {
        await page.goto('https://szit.hu');
        const title = await page.title();
        assert.strictEqual(title, 'start [szit]')
    });
    it('Oktatás link a főoldalon', async function() {
        await page.goto('https://szit.hu');
        const linkExists = await page.waitForSelector('a[href="/doku.php?id=oktatas"]');
        assert.ok(linkExists, 'Az Oktatás link nem található a főoldalon.');
    });
 
    it('Kattintunk az Oktatás linkre', async function() {
        await page.goto('https://szit.hu');
        await page.click('a[href="/doku.php?id=oktatas"]');
        await page.waitForSelector('body')
        const currentUrl = await page.url();
        assert.strictEqual(currentUrl, 'https://szit.hu/doku.php?id=oktatas');
    });
});

Futtatás ha a Mocha a csomagba van telepítve:

npx mocha
oktatas/web/puppeteer.txt · Utolsó módosítás: 2024/04/12 09:49 szerkesztette: admin