38 lines
1.4 KiB
JavaScript
38 lines
1.4 KiB
JavaScript
const puppeteer = require('puppeteer-core');
|
|
const fs = require('fs');
|
|
const OUT = '/root/folxplay-test/prod';
|
|
fs.mkdirSync(OUT, { recursive: true });
|
|
|
|
(async () => {
|
|
const browser = await puppeteer.launch({
|
|
executablePath: '/usr/bin/google-chrome',
|
|
headless: 'new',
|
|
args: ['--no-sandbox', '--disable-setuid-sandbox', '--disable-dev-shm-usage', '--autoplay-policy=no-user-gesture-required']
|
|
});
|
|
|
|
const page = await browser.newPage();
|
|
await page.setViewport({ width: 1440, height: 900 });
|
|
|
|
console.log('Loading https://folxplay.biba.live ...');
|
|
const resp = await page.goto('https://folxplay.biba.live/', { waitUntil: 'networkidle2', timeout: 20000 });
|
|
console.log('HTTP status:', resp.status());
|
|
console.log('Final URL:', resp.url());
|
|
|
|
await new Promise(r => setTimeout(r, 1500));
|
|
await page.screenshot({ path: OUT + '/prod-home.png', fullPage: false });
|
|
console.log('prod-home.png saved');
|
|
|
|
// Click Folx Music
|
|
await page.click('[data-channel="mt"]');
|
|
await new Promise(r => setTimeout(r, 5000));
|
|
await page.screenshot({ path: OUT + '/prod-playing.png', fullPage: false });
|
|
|
|
const state = await page.evaluate(() => {
|
|
const v = document.getElementById('video');
|
|
return v ? { paused: v.paused, currentTime: v.currentTime, duration: v.duration, vw: v.videoWidth, vh: v.videoHeight } : null;
|
|
});
|
|
console.log('Video state:', JSON.stringify(state));
|
|
|
|
await browser.close();
|
|
})();
|