npm install puppeteer
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(); })();
Szeretnénk látni a böngészőt 5 másodpercig. Letiltjuk a fej nélküli indítást:
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(); })();
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(); })();
npm install --save-dev mocha
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