• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

227
Views
¿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: '' }
over 3 years ago · Juan Pablo Isaza
1 answers
Answer question

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.

over 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error