AttributeError: модуль selenium.webdriver.firefox не имеет атрибута find_element_by_name с использованием Selenium через Python

from selenium import webdriver
drivers = webdriver.firefox
elem = drivers.find_element_by_name("username")

Итак, это сценарий, который я написал, но каждый раз, когда я запускаю, он возвращает это сообщение об ошибке:

AttributeError: модуль selenium.webdriver.firefox не имеет атрибута find_element_by_name

1 ответ

Это сообщение об ошибке...

AttributeError: module 'selenium.webdriver.firefox' has no attribute 'find_element_by_name'

... подразумевает, что у selenium.webdriver.firefox нет атрибута какfind_element_by_name.


Вам необходимо учесть следующие моменты:

  • Чтобы инициализировать сеанс Firefox, вам нужно изменить строку кодаdrivers = webdriver.firefox в правильный формат как:

    drivers = webdriver.Firefox()
    
  • find_element_by_name()Метод может найти элемент только тогда, когда загружена HTML DOM. Итак, вам нужно вызватьget(url)и загрузите дерево DOM перед вызовомfind_element_by_name() следующее:

    drivers.get("http://digitalsaf.com/")
    
  • Ваш эффективный блок кода будет:

    from selenium import webdriver
    
    driver = webdriver.Firefox()
    driver.get("http://digitalsaf.com/")
    elem = driver.find_element_by_name("username")
    
Другие вопросы по тегам