diff options
| author | anika-ahluwalia <anika.ahluwalia@gmail.com> | 2020-05-19 11:51:54 -0500 |
|---|---|---|
| committer | anika-ahluwalia <anika.ahluwalia@gmail.com> | 2020-05-19 11:51:54 -0500 |
| commit | 4c10d61230d34c2626eee1ca158a14599909ccf0 (patch) | |
| tree | 6ef945a85934bda5954043c26c93c3db6f6cb573 /src/server | |
| parent | 18f166edfe42a4856a6fea659cb65fd79f00599f (diff) | |
| parent | 5490b3d0be16549e5a01ec30bd3be290cd7c34ee (diff) | |
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web into script_documents
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/ApiManagers/UploadManager.ts | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/server/ApiManagers/UploadManager.ts b/src/server/ApiManagers/UploadManager.ts index 60c52bcfc..756bde738 100644 --- a/src/server/ApiManagers/UploadManager.ts +++ b/src/server/ApiManagers/UploadManager.ts @@ -277,10 +277,12 @@ export default class UploadManager extends ApiManager { } } - +function delay(ms: number) { + return new Promise(resolve => setTimeout(resolve, ms)); +} /** * On success, returns a buffer containing the bytes of a screenshot - * of the video specified by @param url at timecode @param t. + * of the video (optionally, at a timecode) specified by @param targetUrl. * * On failure, returns undefined. */ @@ -289,9 +291,15 @@ async function captureYoutubeScreenshot(targetUrl: string): Promise<Opt<Buffer>> const page = await browser.newPage(); await page.setViewport({ width: 1920, height: 1080 }); - await page.goto(targetUrl, { waitUntil: 'networkidle2' as any }); + await page.goto(targetUrl, { waitUntil: 'domcontentloaded' as any }); const videoPlayer = await page.$('.html5-video-player'); + videoPlayer && await page.focus("video"); + await delay(7000); + const ad = await page.$('.ytp-ad-skip-button-text'); + await ad?.click(); + await videoPlayer?.click(); + await delay(1000); // hide youtube player controls. await page.evaluate(() => (document.querySelector('.ytp-chrome-bottom') as any).style.display = 'none'); |
