• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

215
Vistas
¿Por qué sigo recibiendo NoSuchSessionError cuando ejecuto Selenium en Node.js?

Cuando ejecuto el script, el navegador web automatizado se carga y también el sitio web que quería que se cargara, pero se apaga instantáneamente sin hacer nada más. Miré los documentos y usé el método de espera en caso de que el sitio web que estaba tratando de cargar cargara mucho AJAX pero todavía no parece estar funcionando. ¿Alguien puede explicar qué está pasando y cómo recibo este error?

Aquí está el código JavaScript:

 const {Builder, By, until} = require('selenium-webdriver'); (async function helloSelenium() { let driver = await new Builder().forBrowser('safari').build(); await driver.get('https://www.google.com/?client=safari'); let ele = await driver.wait(until.elementLocated(By.id('gbqfbb'), 10000)); let b = await driver.findElement(By.id('gbqfbb')); console.log(b.getText()); await driver.quit(); })();

Y aquí está el error:

 user@MacBook-Pro webscraper % node webscraper.js Promise { <pending> } /Users/user/Documents/Web/webscraper/node_modules/selenium-webdriver/lib/error.js:522 let err = new ctor(data.message) ^ NoSuchSessionError at Object.throwDecodedError (/Users/user/Documents/Web/webscraper/node_modules/selenium-webdriver/lib/error.js:522:15) at parseHttpResponse (/Users/user/Documents/Web/webscraper/node_modules/selenium-webdriver/lib/http.js:548:13) at Executor.execute (/Users/user/Documents/Web/webscraper/node_modules/selenium-webdriver/lib/http.js:474:28) at processTicksAndRejections (node:internal/process/task_queues:96:5) at async Driver.execute (/Users/user/Documents/Web/webscraper/node_modules/selenium-webdriver/lib/webdriver.js:735:17) { remoteStacktrace: '' }
almost 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Intenta cambiar lo siguiente

De

 let ele = await driver.wait(until.elementLocated(By.id('gbqfbb'), 10000));

a

 let ele = await driver.wait(until.elementLocated(By.id('gbqfbb')), 10000);

También es importante tener en cuenta que si este método arroja una excepción (excepción de tiempo de espera), también debe intentar atraparla.

almost 3 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda