From 5fee2cb73ae50c3a3bb32aab0de3152a8104ca41 Mon Sep 17 00:00:00 2001 From: Tony Date: Fri, 17 Jun 2022 18:01:08 +0000 Subject: [PATCH] perf(route): douyin/tiktok block unnecessary request --- lib/v2/douyin/user.js | 4 ++++ lib/v2/tiktok/user.js | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/lib/v2/douyin/user.js b/lib/v2/douyin/user.js index f234276b0..fccae1a84 100644 --- a/lib/v2/douyin/user.js +++ b/lib/v2/douyin/user.js @@ -64,6 +64,10 @@ module.exports = async (ctx) => { async () => { const browser = await require('@/utils/puppeteer')(); const page = await browser.newPage(); + await page.setRequestInterception(true); + page.on('request', (request) => { + request.resourceType() === 'document' ? request.continue() : request.abort(); + }); await page.goto(pageUrl, { waitUntil: 'domcontentloaded', }); diff --git a/lib/v2/tiktok/user.js b/lib/v2/tiktok/user.js index e01f3379d..1343b3a36 100644 --- a/lib/v2/tiktok/user.js +++ b/lib/v2/tiktok/user.js @@ -15,6 +15,11 @@ module.exports = async (ctx) => { async () => { const browser = await require('@/utils/puppeteer')(); const page = await browser.newPage(); + await page.setRequestInterception(true); + page.on('request', (request) => { + // blocking script reduces clips from 30 -> 16 + request.resourceType() === 'document' || request.resourceType() === 'script' ? request.continue() : request.abort(); + }); await page.goto(`${baseUrl}/${user}`, { waitUntil: 'networkidle2', });