代码错误.我的代码正在打开网页,但在向搜索框发送文本时显示错误.我是python的新手.非常感谢


from selenium import webdriver from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome("C:\Users\rahuls1\chromedriver.exe") 
driver.get('https://www.pastemagazine.com/')
elem = driver.find_element_by_id = ('master-search')
elem.send_keys('music')
elem.send_keys(Keys.RETURN)
time.sleep(5)

错误

File "C:Usersrahuls1DesktopPYTcl.py", line 9, in <module> elem.send_keys("music",) AttributeError: 'str' object has no attribute 'send_keys'

您将'master-search'分配给elem,而不是web元素。使用find_element_by_id的正确方法是

elem = driver.find_element_by_id('master-search')

您的find元素方法在代码中是错误的。您发现元素方法错误。硒中有多个定位器可用于识别网络上的元素。

  • ID
  • 名称
  • 链接文本
  • CSS选择器
  • XPath

您也可以尝试以下xpath:

driver.find_element_by_xpath("//input[@id='master-search']").send_keys("musics")

请找到下面的链接,它将让你知道如何处理网络元素的更多信息。https://selenium-python.readthedocs.io/locating-elements.html

最新更新