T1ckbase commited on
Commit
1c93e9d
·
1 Parent(s): e97e4b5
Files changed (6) hide show
  1. Dockerfile +3 -2
  2. README.md +1 -1
  3. main.ts +16 -13
  4. package.json +3 -3
  5. pnpm-lock.yaml +16 -16
  6. screenshot.png +0 -0
Dockerfile CHANGED
@@ -30,6 +30,7 @@ RUN pnpm exec playwright install --with-deps chrome
30
  COPY start.sh /app/start.sh
31
  RUN chmod +x /app/start.sh
32
 
33
- EXPOSE 9222
34
 
35
- CMD ["/app/start.sh"]
 
 
30
  COPY start.sh /app/start.sh
31
  RUN chmod +x /app/start.sh
32
 
33
+ EXPOSE 3000
34
 
35
+ # CMD ["/app/start.sh"]
36
+ CMD ["pnpm", "start"]
README.md CHANGED
@@ -7,7 +7,7 @@ sdk: docker
7
  pinned: false
8
  license: mit
9
  short_description: remote playwright test
10
- app_port: 9222
11
  ---
12
 
13
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
7
  pinned: false
8
  license: mit
9
  short_description: remote playwright test
10
+ app_port: 3000
11
  ---
12
 
13
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
main.ts CHANGED
@@ -1,25 +1,28 @@
1
  import { chromium, devices } from 'playwright';
2
  // import { createSecureServer } from 'node:http2';
3
- // import { serve } from '@hono/node-server';
4
- // import { Hono } from 'hono';
 
5
 
6
  // https://t1ckbase-remote-playwright-test.hf.space
7
 
8
- // const app = new Hono();
9
 
10
- // app.get('/hello', (c) => c.text('Hello Node.js!'));
 
 
11
 
12
  // app.get('/json', async (c) => await fetch('http://127.0.0.1:9222/json'));
13
 
14
- // serve({
15
- // port: 9222,
16
- // fetch: app.fetch,
17
- // createServer: createSecureServer,
18
- // });
19
 
20
  const browser = await chromium.launch({
21
  headless: true,
22
- args: ['--disable-blink-features=AutomationControlled', '--remote-debugging-port=9222'],
23
  channel: 'chrome',
24
  });
25
  const context = await browser.newContext({
@@ -35,11 +38,11 @@ const page = await context.newPage();
35
  // await page.goto('https://bot.sannysoft.com', { waitUntil: 'load' });
36
  // await page.goto('https://www.browserscan.net/bot-detection');
37
  // await page.goto('https://fingerprintjs.github.io/BotD/main/');
38
- await page.goto('https://google.com');
39
 
40
- // await page.screenshot({ path: 'screenshot.png', fullPage: true });
41
 
42
- await page.waitForEvent('close', { timeout: 0 });
43
 
44
  await context.close();
45
  await browser.close();
 
1
  import { chromium, devices } from 'playwright';
2
  // import { createSecureServer } from 'node:http2';
3
+ import { Hono } from 'hono';
4
+ import { serve } from '@hono/node-server';
5
+ import { serveStatic } from '@hono/node-server/serve-static';
6
 
7
  // https://t1ckbase-remote-playwright-test.hf.space
8
 
9
+ const app = new Hono();
10
 
11
+ app.use('/screenshot.png', serveStatic({ path: './screenshot.png' }));
12
+
13
+ app.get('/', (c) => c.text('Hello Node.js!'));
14
 
15
  // app.get('/json', async (c) => await fetch('http://127.0.0.1:9222/json'));
16
 
17
+ serve({
18
+ port: 3000,
19
+ fetch: app.fetch,
20
+ // createServer: createSecureServer,
21
+ });
22
 
23
  const browser = await chromium.launch({
24
  headless: true,
25
+ args: ['--disable-blink-features=AutomationControlled' /* , '--remote-debugging-port=9222' */],
26
  channel: 'chrome',
27
  });
28
  const context = await browser.newContext({
 
38
  // await page.goto('https://bot.sannysoft.com', { waitUntil: 'load' });
39
  // await page.goto('https://www.browserscan.net/bot-detection');
40
  // await page.goto('https://fingerprintjs.github.io/BotD/main/');
41
+ await page.goto('https://translate.google.com/?sl=auto&tl=en&op=images', { waitUntil: 'load' });
42
 
43
+ await page.screenshot({ path: 'screenshot.png', fullPage: true });
44
 
45
+ // await page.waitForEvent('close', { timeout: 0 });
46
 
47
  await context.close();
48
  await browser.close();
package.json CHANGED
@@ -3,13 +3,13 @@
3
  "start": "node --disable-warning=ExperimentalWarning main.ts"
4
  },
5
  "dependencies": {
6
- "@hono/node-server": "^1.14.1",
7
  "browser-chromium": "link:@playwright\\browser-chromium",
8
- "hono": "^4.7.9",
9
  "playwright": "^1.52.0"
10
  },
11
  "devDependencies": {
12
- "@types/node": "^22.15.18",
13
  "prettier": "^3.5.3"
14
  },
15
  "type": "module",
 
3
  "start": "node --disable-warning=ExperimentalWarning main.ts"
4
  },
5
  "dependencies": {
6
+ "@hono/node-server": "^1.14.2",
7
  "browser-chromium": "link:@playwright\\browser-chromium",
8
+ "hono": "^4.7.10",
9
  "playwright": "^1.52.0"
10
  },
11
  "devDependencies": {
12
+ "@types/node": "^22.15.21",
13
  "prettier": "^3.5.3"
14
  },
15
  "type": "module",
pnpm-lock.yaml CHANGED
@@ -9,43 +9,43 @@ importers:
9
  .:
10
  dependencies:
11
  '@hono/node-server':
12
- specifier: ^1.14.1
13
- version: 1.14.1(hono@4.7.9)
14
  browser-chromium:
15
  specifier: link:@playwright\browser-chromium
16
  version: link:@playwright/browser-chromium
17
  hono:
18
- specifier: ^4.7.9
19
- version: 4.7.9
20
  playwright:
21
  specifier: ^1.52.0
22
  version: 1.52.0
23
  devDependencies:
24
  '@types/node':
25
- specifier: ^22.15.18
26
- version: 22.15.18
27
  prettier:
28
  specifier: ^3.5.3
29
  version: 3.5.3
30
 
31
  packages:
32
 
33
- '@hono/node-server@1.14.1':
34
- resolution: {integrity: sha512-vmbuM+HPinjWzPe7FFPWMMQMsbKE9gDPhaH0FFdqbGpkT5lp++tcWDTxwBl5EgS5y6JVgIaCdjeHRfQ4XRBRjQ==}
35
  engines: {node: '>=18.14.1'}
36
  peerDependencies:
37
  hono: ^4
38
 
39
- '@types/node@22.15.18':
40
- resolution: {integrity: sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==}
41
 
42
  fsevents@2.3.2:
43
  resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
44
  engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
45
  os: [darwin]
46
 
47
- hono@4.7.9:
48
- resolution: {integrity: sha512-/EsCoR5h7N4yu01TDu9GMCCJa6ZLk5ZJIWFFGNawAXmd1Tp53+Wir4xm0D2X19bbykWUlzQG0+BvPAji6p9E8Q==}
49
  engines: {node: '>=16.9.0'}
50
 
51
  playwright-core@1.52.0:
@@ -68,18 +68,18 @@ packages:
68
 
69
  snapshots:
70
 
71
- '@hono/node-server@1.14.1(hono@4.7.9)':
72
  dependencies:
73
- hono: 4.7.9
74
 
75
- '@types/node@22.15.18':
76
  dependencies:
77
  undici-types: 6.21.0
78
 
79
  fsevents@2.3.2:
80
  optional: true
81
 
82
- hono@4.7.9: {}
83
 
84
  playwright-core@1.52.0: {}
85
 
 
9
  .:
10
  dependencies:
11
  '@hono/node-server':
12
+ specifier: ^1.14.2
13
+ version: 1.14.2(hono@4.7.10)
14
  browser-chromium:
15
  specifier: link:@playwright\browser-chromium
16
  version: link:@playwright/browser-chromium
17
  hono:
18
+ specifier: ^4.7.10
19
+ version: 4.7.10
20
  playwright:
21
  specifier: ^1.52.0
22
  version: 1.52.0
23
  devDependencies:
24
  '@types/node':
25
+ specifier: ^22.15.21
26
+ version: 22.15.21
27
  prettier:
28
  specifier: ^3.5.3
29
  version: 3.5.3
30
 
31
  packages:
32
 
33
+ '@hono/node-server@1.14.2':
34
+ resolution: {integrity: sha512-GHjpOeHYbr9d1vkID2sNUYkl5IxumyhDrUJB7wBp7jvqYwPFt+oNKsAPBRcdSbV7kIrXhouLE199ks1QcK4r7A==}
35
  engines: {node: '>=18.14.1'}
36
  peerDependencies:
37
  hono: ^4
38
 
39
+ '@types/node@22.15.21':
40
+ resolution: {integrity: sha512-EV/37Td6c+MgKAbkcLG6vqZ2zEYHD7bvSrzqqs2RIhbA6w3x+Dqz8MZM3sP6kGTeLrdoOgKZe+Xja7tUB2DNkQ==}
41
 
42
  fsevents@2.3.2:
43
  resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
44
  engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
45
  os: [darwin]
46
 
47
+ hono@4.7.10:
48
+ resolution: {integrity: sha512-QkACju9MiN59CKSY5JsGZCYmPZkA6sIW6OFCUp7qDjZu6S6KHtJHhAc9Uy9mV9F8PJ1/HQ3ybZF2yjCa/73fvQ==}
49
  engines: {node: '>=16.9.0'}
50
 
51
  playwright-core@1.52.0:
 
68
 
69
  snapshots:
70
 
71
+ '@hono/node-server@1.14.2(hono@4.7.10)':
72
  dependencies:
73
+ hono: 4.7.10
74
 
75
+ '@types/node@22.15.21':
76
  dependencies:
77
  undici-types: 6.21.0
78
 
79
  fsevents@2.3.2:
80
  optional: true
81
 
82
+ hono@4.7.10: {}
83
 
84
  playwright-core@1.52.0: {}
85
 
screenshot.png ADDED