browser.newContext: Target page, context or browser has been closed
机器人开始抓取数据的时候,创建浏览器异常了,是什么原因?
报错信息如下: [0] /app/node_modules/playwright-extra/src/extra.ts:267 [0] const context = await originalMethod.call(ctx, contextOptions) [0] ^ [0] browser.newContext: Target page, context or browser has been closed [0] at async Browser.newContext (/app/node_modules/playwright-extra/src/extra.ts:267:25) [0] at async RemoteBrowser.initialize (/app/server/src/browser-management/classes/RemoteBrowser.ts:295:24) [0] at /app/async /app/server/src/browser-management/controller.ts:37:9 [0] [nodemon] app crashed - waiting for file changes before starting...
@yuexingliang can you confirm does this happen everytime or just sometimes?
@RohitR311 look into this
@yuexingliang can you confirm does this happen everytime or just sometimes?
@RohitR311 look into this
每次都这样,我的浏览器启动不起来,不能使用数据抓取功能
@yuexingliang Thanks for the quick response. We do not see this happening on every local setup. Could you share more about your configuration
- Operating System
- Are you behind a proxy/firewall?
- Local or Docker installation?
- Docker logs
- Browser console logs (if any)
@yuexingliang Thanks for the quick response. We do not see this happening on every local setup. Could you share more about your configuration
- Operating System
- Are you behind a proxy/firewall?
- Local or Docker installation?
- Docker logs
- Browser console logs (if any)
Operating System
.env
App Setup
NODE_ENV=production # Set to 'development' or 'production' as required JWT_SECRET=HtMemaPiDfHfFRp0YASfTZOWgGqKPMwDFbq1ITnS # Replace with a secure JWT secret key DB_NAME=maxun # Your PostgreSQL database name DB_USER=maxun # PostgreSQL username DB_PASSWORD=maxun # PostgreSQL password DB_HOST=postgres # Host for PostgreSQL in Docker DB_PORT=5432 # Port for PostgreSQL (default: 5432) ENCRYPTION_KEY=f4d5e6a7b8c9d0e1f23456789abcdef01234567890abcdef123456789abcdef0 # Key for encrypting sensitive data (passwords and proxies) MINIO_ENDPOINT=minio # MinIO endpoint in Docker MINIO_PORT=9000 # Port for MinIO (default: 9000) MINIO_CONSOLE_PORT=9001 # Web UI Port for MinIO (default: 9001) MINIO_ACCESS_KEY=minioadmin # MinIO access key MINIO_SECRET_KEY=minioadmin # MinIO secret key REDIS_HOST=maxun-redis-1 # Redis host in Docker REDIS_PORT=6379 # Redis port (default: 6379) #REDIS_PASSWORD= # Redis password (This is optional. Needed to authenticate with a password-protected Redis instance; if not set, Redis will connect without authentication.)
Backend and Frontend URLs and Ports
BACKEND_PORT=8080 # Port to run backend on. Needed for Docker setup FRONTEND_PORT=5173 # Port to run frontend on. Needed for Docker setup BACKEND_URL=http://localhost:8080 # URL on which the backend runs. You can change it based on your needs. PUBLIC_URL=http://localhost:5173 # URL on which the frontend runs. You can change it based on your needs. VITE_BACKEND_URL=http://localhost:8080 # URL used by frontend to connect to backend. It should always have the same value as BACKEND_URL VITE_PUBLIC_URL=http://localhost:5173 # URL used by backend to connect to frontend. It should always have the same value as PUBLIC_URL
Optional Google OAuth settings for Google Sheet Integration
GOOGLE_CLIENT_ID=your_google_client_id GOOGLE_CLIENT_SECRET=your_google_client_secret GOOGLE_REDIRECT_URI=your_google_redirect_uri
Optional Airtable OAuth settings for Airtable Integration
AIRTABLE_CLIENT_ID=your_airtable_client_id AIRTABLE_REDIRECT_URI=http://localhost:8080/auth/airtable/callback
Telemetry Settings - Please keep it enabled. Keeping it enabled helps us understand how the product is used and assess the impact of any new changes.
MAXUN_TELEMETRY=true
3、Docker install, command docker-compose up -d
4、docker logs -f maxun-backend-1
/app/node_modules/playwright-extra/src/extra.ts:267 [0] const context = await originalMethod.call(ctx, contextOptions) [0] ^ [0] browser.newContext: Target page, context or browser has been closed [0] at async Browser.newContext (/app/node_modules/playwright-extra/src/extra.ts:267:25) [0] at async RemoteBrowser.initialize (/app/server/src/browser-management/classes/RemoteBrowser.ts:295:24) [0] at /app/async /app/server/src/browser-management/controller.ts:37:9 [0] [nodemon] app crashed - waiting for file changes before starting...
5、I couldn't find dockerlog
@RohitR311 Could you please let me know when this issue is expected to be resolved?
@yuexingliang This is being fixed in #498 and will be available in the next release - which will be this week.
@yuexingliang This is being fixed in #498 and will be available in the next release - which will be this week.
thanks
I also encountered the same issue and made some additional discoveries. Firstly, in the Docker logs of the backend project, there is this error: "Target page, context or browser has been closed." Secondly, I found that the backend service frequently crashes, and there is this problem: "[nodemon] app crashed - waiting for file changes before starting," which forces me to restart the backend service.
I suspect that this issue is caused by insufficient CPU resources on the server. When I see the Docker log starting with "Target page, context or browser has been closed," I find that the server's CPU is already at 100%.