{"_id":"@aiospe/n8n-nodes-playwright","_rev":"3-9c588670a6c6d8259fc74eed0fe988c0","name":"@aiospe/n8n-nodes-playwright","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.0":{"name":"@aiospe/n8n-nodes-playwright","version":"0.1.0","keywords":["n8n-community-node-package"],"author":{"name":"Manuel Temple","email":"mtemple@aios.pe"},"license":"MIT","_id":"@aiospe/n8n-nodes-playwright@0.1.0","maintainers":[{"name":"idkc","email":"manueltemple@gmail.com"}],"homepage":"https://github.com/idkc-aios/n8n-node-playwright#readme","bugs":{"url":"https://github.com/idkc-aios/n8n-node-playwright/issues"},"n8n":{"nodes":["dist/nodes/PlaywrightStep/PlaywrightStep.node.js"],"credentials":["dist/credentials/PlaywrightApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"4e740452583d6a8b3697ec1d48e732fd9aa4d424","tarball":"https://registry.npmjs.org/@aiospe/n8n-nodes-playwright/-/n8n-nodes-playwright-0.1.0.tgz","fileCount":29,"integrity":"sha512-05P3HNFjfgmiuuroN24crkZrfP8FDU9wngse0WhOyiyO2ssj6FzLp8MkrYuSjQRHB85FqvckrJ0yDlO5b/JfvA==","signatures":[{"sig":"MEUCIQDReBindurM4fDtmu7kATL0Dzj4ewC5uMcJYFwXf8V5IgIgPnXVnM0SILuG74/8wQ+nV7Bx73zSb4bVLckBFWfd/mY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94506},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"240b993f66664f08477158b1d2106a7005003ab8","scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json","build":"npx rimraf dist && tsc && gulp build:icons","format":"prettier nodes credentials --write","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"_npmUser":{"name":"idkc","email":"manueltemple@gmail.com"},"repository":{"url":"git+https://github.com/idkc-aios/n8n-node-playwright.git","type":"git"},"_npmVersion":"10.2.4","description":"Node para ejecutar pasos de automatización en Playwright","directories":{},"_nodeVersion":"20.11.1","_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.0","eslint":"^8.57.0","prettier":"^3.5.3","@types/ws":"^8.5.4","typescript":"^5.8.2","@typescript-eslint/parser":"~8.32.0","eslint-plugin-n8n-nodes-base":"^1.16.3"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-playwright_0.1.0_1749611431537_0.547761000086487","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@aiospe/n8n-nodes-playwright","version":"0.1.1","keywords":["n8n-community-node-package"],"author":{"name":"Manuel Temple","email":"mtemple@aios.pe"},"license":"MIT","_id":"@aiospe/n8n-nodes-playwright@0.1.1","maintainers":[{"name":"idkc","email":"manueltemple@gmail.com"}],"homepage":"https://github.com/idkc-aios/n8n-node-playwright#readme","bugs":{"url":"https://github.com/idkc-aios/n8n-node-playwright/issues"},"n8n":{"nodes":["dist/nodes/PlaywrightStep/PlaywrightStep.node.js"],"credentials":["dist/credentials/PlaywrightApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"cfc1fb3c2c10222d93b0bc8296e33beb0ffc3c13","tarball":"https://registry.npmjs.org/@aiospe/n8n-nodes-playwright/-/n8n-nodes-playwright-0.1.1.tgz","fileCount":29,"integrity":"sha512-RGpcOKe88lbgBKEJ8cg73LDdxrsTXgsSYz2GYGVbXGit5tk2FyQhVP7XQAp1f34nNid0qWq5raRgi0QSpnHmog==","signatures":[{"sig":"MEUCIQDo6Z+0gX2svP7272O8eASU+8jpCAGElq5RXKlvZsITuwIgUZclRUZ9+Xc+TkzqDAi+TFqOICKNwM5cMlD0fkNJWfY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97202},"main":"index.js","engines":{"node":">=20.15"},"gitHead":"71e881f8b4b6e717a9064c1dd9c8b310ea13b3a5","scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json","build":"npx rimraf dist && tsc && gulp build:icons","format":"prettier nodes credentials --write","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"_npmUser":{"name":"idkc","email":"manueltemple@gmail.com"},"repository":{"url":"git+https://github.com/idkc-aios/n8n-node-playwright.git","type":"git"},"_npmVersion":"10.2.4","description":"Node para ejecutar pasos de automatización en Playwright","directories":{},"_nodeVersion":"20.11.1","_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.0","eslint":"^8.57.0","prettier":"^3.5.3","@types/ws":"^8.5.4","typescript":"^5.8.2","@typescript-eslint/parser":"~8.32.0","eslint-plugin-n8n-nodes-base":"^1.16.3"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-playwright_0.1.1_1749697025376_0.4592970836344379","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@aiospe/n8n-nodes-playwright","version":"0.1.2","description":"Node para ejecutar pasos de automatización en Playwright","keywords":["n8n-community-node-package"],"license":"MIT","homepage":"https://github.com/idkc-aios/n8n-node-playwright#readme","author":{"name":"Manuel Temple","email":"mtemple@aios.pe"},"repository":{"type":"git","url":"git+https://github.com/idkc-aios/n8n-node-playwright.git"},"engines":{"node":">=20.15"},"main":"index.js","scripts":{"build":"npx rimraf dist && tsc && gulp build:icons","dev":"tsc --watch","format":"prettier nodes credentials --write","lint":"eslint nodes credentials package.json","lintfix":"eslint nodes credentials package.json --fix","prepublishOnly":"npm run build && npm run lint -c .eslintrc.prepublish.js nodes credentials package.json"},"n8n":{"n8nNodesApiVersion":1,"credentials":["dist/credentials/PlaywrightApi.credentials.js"],"nodes":["dist/nodes/PlaywrightStep/PlaywrightStep.node.js","dist/nodes/PlaywrightBrowser/PlaywrightBrowser.node.js","dist/nodes/PlaywrightNavigation/PlaywrightNavigation.node.js","dist/nodes/PlaywrightExtract/PlaywrightExtract.node.js","dist/nodes/PlaywrightScreenshot/PlaywrightScreenshot.node.js","dist/nodes/PlaywrightExecute/PlaywrightExecute.node.js"]},"devDependencies":{"@typescript-eslint/parser":"~8.32.0","eslint":"^8.57.0","eslint-plugin-n8n-nodes-base":"^1.16.3","gulp":"^5.0.0","prettier":"^3.5.3","typescript":"^5.8.2","@types/ws":"^8.5.4"},"peerDependencies":{"n8n-workflow":"*"},"_id":"@aiospe/n8n-nodes-playwright@0.1.2","gitHead":"71e881f8b4b6e717a9064c1dd9c8b310ea13b3a5","bugs":{"url":"https://github.com/idkc-aios/n8n-node-playwright/issues"},"_nodeVersion":"20.11.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-w3YWpKhE7Ghl1jz2yAGklTPddHjDTY9Um7MsdTQu+Vom1dpqSsCA5GrVpfE8xNmZO1XlJleyIdUKml5aIgXibQ==","shasum":"4fec6c53726b71e859650cca12e922dbf2a4343f","tarball":"https://registry.npmjs.org/@aiospe/n8n-nodes-playwright/-/n8n-nodes-playwright-0.1.2.tgz","fileCount":44,"unpackedSize":222166,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAHhDdRhW77Urb7mqdMGNgxW8FVN+mvnxCnsPpkqJqGwAiAf07/2h2XfWnTboceKZr3qoRuH/1e98Bn+zp2XTy+xsg=="}]},"_npmUser":{"name":"idkc","email":"manueltemple@gmail.com","actor":{"name":"idkc","email":"manueltemple@gmail.com","type":"user"}},"directories":{},"maintainers":[{"name":"idkc","email":"manueltemple@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-playwright_0.1.2_1750651959974_0.31623205744445126"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-11T03:10:31.444Z","modified":"2025-06-23T04:12:40.358Z","0.1.0":"2025-06-11T03:10:31.730Z","0.1.1":"2025-06-12T02:57:05.558Z","0.1.2":"2025-06-23T04:12:40.151Z"},"bugs":{"url":"https://github.com/idkc-aios/n8n-node-playwright/issues"},"author":{"name":"Manuel Temple","email":"mtemple@aios.pe"},"license":"MIT","homepage":"https://github.com/idkc-aios/n8n-node-playwright#readme","keywords":["n8n-community-node-package"],"repository":{"type":"git","url":"git+https://github.com/idkc-aios/n8n-node-playwright.git"},"description":"Node para ejecutar pasos de automatización en Playwright","maintainers":[{"name":"idkc","email":"manueltemple@gmail.com"}],"readme":"# n8n-node-playwright\r\n\r\nEste plugin para n8n permite controlar y automatizar navegadores web mediante Playwright a través de una conexión WebSocket, permitiendo realizar operaciones de automatización de navegadores, navegación web, extracción de datos y captura de pantallas.\r\n\r\n## Características\r\n\r\n- Gestión de múltiples sesiones de navegadores mediante identificadores únicos\r\n- Conexión a un servidor Playwright via WebSocket para ejecutar comandos remotamente\r\n- Estructura modular con nodos especializados para diferentes tareas\r\n- Soporte para Chrome, Firefox y WebKit (Safari)\r\n- Opciones avanzadas para navegación, extracción y captura de pantallas\r\n\r\n## Nodos incluidos\r\n\r\n### PlaywrightBrowser\r\n\r\nNodo para iniciar y cerrar sesiones de navegador Playwright.\r\n\r\n**Operaciones:**\r\n- **start**: Inicia una nueva sesión de navegador (Chrome, Firefox, WebKit)\r\n- **close**: Cierra una sesión existente\r\n\r\n**Opciones:**\r\n- Tipo de navegador (Chrome, Firefox, WebKit)\r\n- Modo headless/headed\r\n- Tamaño de viewport\r\n- User agent personalizado\r\n\r\n### PlaywrightNavigation\r\n\r\nNodo para realizar acciones de navegación y manipulación del DOM.\r\n\r\n**Operaciones:**\r\n- Navegar a URL\r\n- Hacer clic en elementos\r\n- Escribir texto en formularios\r\n- Seleccionar opciones de dropdown\r\n- Esperar elementos/navegación\r\n- Avanzar/retroceder en el historial\r\n- Recargar página\r\n\r\n### PlaywrightExtract\r\n\r\nNodo para extraer datos de páginas web.\r\n\r\n**Operaciones:**\r\n- Extraer texto\r\n- Extraer HTML\r\n- Extraer atributos de elementos\r\n- Evaluar expresiones JavaScript\r\n- Extraer listas de elementos\r\n- Extraer tablas con formato personalizable\r\n\r\n### PlaywrightScreenshot\r\n\r\nNodo para capturar imágenes de páginas web.\r\n\r\n**Operaciones:**\r\n- Capturar pantalla completa\r\n- Capturar área visible\r\n- Capturar elementos específicos\r\n\r\n**Opciones:**\r\n- Formato de imagen (PNG/JPEG)\r\n- Calidad\r\n- Escala\r\n- Output (base64/binario)\r\n\r\n### PlaywrightExecute\r\n\r\nNodo para ejecutar código JavaScript personalizado en el contexto del navegador.\r\n\r\n**Operaciones:**\r\n- Evaluar en página\r\n- Evaluar en elemento específico\r\n- Ejecutar funciones predefinidas (URL, título, cookies, formularios, scroll)\r\n\r\n## Requisitos\r\n\r\n### Servidor Playwright WebSocket\r\n\r\nPara utilizar este plugin, necesitas un servidor WebSocket que controle instancias de Playwright y responda a los mensajes enviados por los nodos. El servidor debe implementar la lógica para:\r\n\r\n- Crear y gestionar sesiones de navegador\r\n- Ejecutar comandos de navegación\r\n- Extraer datos según las especificaciones\r\n- Capturar pantallas\r\n- Ejecutar código JavaScript personalizado\r\n\r\n## Instalación\r\n\r\n1. Instala el plugin en tu instalación de n8n:\r\n   ```\r\n   npm install @aiospe/n8n-nodes-playwright\r\n   ```\r\n\r\n2. Configura las credenciales del servidor WebSocket Playwright en n8n.\r\n\r\n## Ejemplo de uso\r\n\r\n1. Añade un nodo **PlaywrightBrowser** con la operación \"start\" y define un ID de sesión.\r\n2. Usa **PlaywrightNavigation** para navegar a una URL específica.\r\n3. Utiliza **PlaywrightExtract** para extraer datos de la página.\r\n4. Finaliza con **PlaywrightBrowser** usando la operación \"close\" para cerrar la sesión.\r\n\r\n## Notas sobre implementación del servidor WebSocket\r\n\r\nEl servidor debe estar preparado para recibir mensajes JSON con la siguiente estructura:\r\n\r\n```json\r\n{\r\n  \"action\": \"startBrowser|closeBrowser|navigate|extract|screenshot|execute\",\r\n  \"sessionId\": \"session-unique-id\",\r\n  \"operation\": \"operación-específica\",\r\n  \"options\": { ... opciones adicionales ... }\r\n}\r\n```\r\n\r\nY responder con:\r\n\r\n```json\r\n{\r\n  \"success\": true|false,\r\n  \"data\": { ... datos resultantes ... },\r\n  \"error\": \"mensaje de error si ocurrió alguno\"\r\n}\r\n```\r\n\r\n## Licencia\r\n\r\nMIT\r\n","readmeFilename":"README.md"}