-1
from selenium import webdriver
from selenium.webdriver.common.by import By

from selenium.webdriver.common.keys import Keys

driver = webdriver.Chrome(r"C:\Users\ram.sn\Desktop\New folder\chromedriver_win32 (2)\chromedriver.exe")

driver.get("https://www.nopcommerce.com/en/login")

driver.find_element_by_id("Username").send_keys("test")

Error:

AttributeError: 'NoneType' object has no attribute 'send_keys'
Barry the Platipus
  • 9,594
  • 2
  • 6
  • 30
  • If possible, please provide link to webpage you're testing and the code needed to fix using StackOverflow's editor. – Rahul Jun 08 '23 at 07:15

2 Answers2

0

Make sure that the driver in not None.

if driver == None:
    Logger.info('Driver is none')

Also, make sure that you actually found the element

element = driver.find_element_by_id("Username")
if element == None:
    Logger.info('element is none')
else:
    element.send_keys('test')
Tal Angel
  • 1,301
  • 3
  • 29
  • 63
0

find_element_by_* commands are deprecated now. So you have to replace:

driver.find_element_by_id("Username").send_keys("test")

with

driver.find_element(By.ID, "Username").send_keys("test")
undetected Selenium
  • 183,867
  • 41
  • 278
  • 352