Spaces:
Running
Running
browser caching
Browse files
index.js
CHANGED
@@ -12,6 +12,8 @@ import sharp from 'sharp'
|
|
12 |
import util from 'util'
|
13 |
import yts from 'yt-search'
|
14 |
|
|
|
|
|
15 |
const utils = {
|
16 |
getBrowser: (...opts) => playwright.chromium.launch({
|
17 |
args: [
|
@@ -49,9 +51,10 @@ const utils = {
|
|
49 |
fetchPOST: (url, body, opts = {}) => fetch(url, { method: 'POST', body, ...opts }),
|
50 |
formatSize: (n) => bytes(+n, { unitSeparator: ' ' }),
|
51 |
generateBrat: async (text) => {
|
52 |
-
|
|
|
53 |
try {
|
54 |
-
|
55 |
await page.goto('https://www.bratgenerator.com/')
|
56 |
await page.click('#toggleButtonWhite')
|
57 |
await page.locator('#textInput').fill(text)
|
@@ -62,8 +65,8 @@ const utils = {
|
|
62 |
} catch (e) {
|
63 |
throw e
|
64 |
} finally {
|
65 |
-
|
66 |
-
|
67 |
},
|
68 |
getError: (e) => String(e).startsWith('[object ') ? 'Internal Server Error' : String(e),
|
69 |
isBase64: (str) => {
|
@@ -300,4 +303,10 @@ app.all(/^\/y(outube|t)(\/(d(ownload|l)|search)?)?/, async (req, res) => {
|
|
300 |
|
301 |
// app.use((req, res, next) => {})
|
302 |
|
303 |
-
app.listen(7860, () =>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
import util from 'util'
|
13 |
import yts from 'yt-search'
|
14 |
|
15 |
+
let browser = null;
|
16 |
+
|
17 |
const utils = {
|
18 |
getBrowser: (...opts) => playwright.chromium.launch({
|
19 |
args: [
|
|
|
51 |
fetchPOST: (url, body, opts = {}) => fetch(url, { method: 'POST', body, ...opts }),
|
52 |
formatSize: (n) => bytes(+n, { unitSeparator: ' ' }),
|
53 |
generateBrat: async (text) => {
|
54 |
+
if (!browser) browser = await utils.getBrowser()
|
55 |
+
let page
|
56 |
try {
|
57 |
+
page = await browser.newPage()
|
58 |
await page.goto('https://www.bratgenerator.com/')
|
59 |
await page.click('#toggleButtonWhite')
|
60 |
await page.locator('#textInput').fill(text)
|
|
|
65 |
} catch (e) {
|
66 |
throw e
|
67 |
} finally {
|
68 |
+
if (page) await page.close()
|
69 |
+
}
|
70 |
},
|
71 |
getError: (e) => String(e).startsWith('[object ') ? 'Internal Server Error' : String(e),
|
72 |
isBase64: (str) => {
|
|
|
303 |
|
304 |
// app.use((req, res, next) => {})
|
305 |
|
306 |
+
app.listen(7860, async() => {
|
307 |
+
if (!browser) {
|
308 |
+
browser = await utils.getBrowser()
|
309 |
+
await browser.newPage()
|
310 |
+
}
|
311 |
+
console.log('App running on port 7860')
|
312 |
+
})
|