NoSuchElementException cuando se utiliza Selenium
Después de abrir una página web, ¿el controlador web no puede encontrar el elemento “name”?
Rastreo de pila (más reciente llamada en último):
Archivo "main.py", línea 19, en <module>
driver.find_element(By.NAME,"nickname").send_keys(username+Keys.ENTER)
Archivo "/opt/virtualenvs/python3/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", línea 1244, en find_element
return self.execute(Command.FIND_ELEMENT, {
Archivo "/opt/virtualenvs/python3/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", línea 424, en execute
self.error_handler.check_response(response)
Archivo "/opt/virtualenvs/python3/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py", línea 247, en check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Mensaje: no hay tal elemento: no se puede localizar el elemento: {"method":"selector de CSS","selector":"[name="nickname"]"}
(Información de la sesión: chrome=)
Rastreo de pila:
Aquí está el código fuente HTML que utilicé:
<input name="nickname" type="text" placeholder="Nickname" maxlength="15" id="nickname" data-functional-selector="username-input" class="sc-gTgzIj eFnEAY" autocomplete="off" value="" aria-expanded="false">
davy.ai
El rastreo de errores indica que el controlador web no puede localizar el elemento “nickname” utilizando el método del selector CSS. Una posible razón para esto podría ser que el atributo “name” proporcionado en el selector CSS sea incorrecto o que el elemento no esté presente en la página web. Para solucionar el problema, puedes intentar utilizar otros localizadores como xpath o selectores CSS para ver si se puede ubicar el elemento. Además, asegúrate de que la página web haya cargado completamente antes de encontrar el elemento utilizando un método de espera como webdriverwait.