-2

I can't automate my code

from selenium import webdriver
from selenium.webdriver.common.keys import Keys


driver = webdriver.Chrome(executable_path=r"D:\New folder\Programming\chrome driver\chromedriver")

driver.get("https://www.youtube.com/")

search = driver.find_element_by_id("search")

search.Send_Keys("fish")

Error:

AttributeError: 'WebElement' object has no attribute 'Send_Keys'

Snapshot:

any help please.

2
  • Edit: make the code clearer to anyone looking Commented Jun 27, 2020 at 11:49
  • from selenium import webdriver from selenium.webdriver.common.keys import Keys driver = webdriver.Chrome(executable_path=r"D:\New folder\Programming\chrome driver\chromedriver") driver.get("youtube.com/") search = driver.find_element_by_id("search") search.Send_Keys("fish") ERROR : search.Send_Keys("fish") AttributeError: 'WebElement' object has no attribute 'Send_Keys' YOU can see the screenshot too Commented Jun 27, 2020 at 11:50

2 Answers 2

1
search.send_keys()

Python, as most languages, is case sensitive. Not that experienced with selenium but after a quick search that might be it.

Sign up to request clarification or add additional context in comments.

Comments

1

send_keys()

send_keys(*value) simulates typing into the element.

To simualate sending a character sequence within an element you need to:

  • Python:

    driver.find_element_by_id("search").send_keys("fish")
    
  • Java:

    driver.findElement(By.id("search")).sendKeys("fish");
    
  • C#:

    driver.FindElement(By.Id("search")).SendKeys("fish");
    
  • VBA:

    driver.FindElementById("search").SendKeys ("fish")
    
  • Ruby:

    driver.find_element(id: 'search').send_keys 'fish'
    
  • JavaScript:

    driver.findElement(By.id('search')).sendKeys('fish');
    
  • Kotlin:

    driver.findElement(By.id("search")).sendKeys("fish")
    

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.