簡體   English   中英

Selenium AttributeError: type object 'By' 在獲取輸入時沒有屬性 'name'

[英]Selenium AttributeError: type object 'By' has no attribute 'name' while fetching input

不知道為什么會出現這個錯誤,我已經問過與這個問題有關的各種問題。 由於某種原因,Webdriver 無法找到我正在尋找的類型字段,給我 Attribute not found 錯誤以及 NoSuchElementException 錯誤。

錯誤信息:

Traceback (most recent call last):
  File "main.py", line 19, in <module>
    driver.find_element(By.name,"nickname").send_keys(username+Keys.ENTER)
AttributeError: type object 'By' has no attribute 'name'

代碼行:

time.sleep(0.2)
driver.find_element(By.name,"nickname").send_keys(username+Keys.ENTER)

HTML:

<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">

根據The By實現,支持的定位器策略集是:

  • CLASS_NAME = class name
  • CSS_SELECTOR = css selector
  • ID = id
  • LINK_TEXT = link text
  • NAME = name
  • PARTIAL_LINK_TEXT = partial link text
  • TAG_NAME = tag name
  • XPATH = xpath

因此,您必須將By.name更改為By.NAME

實際上,您的代碼行將是:

driver.find_element(By.NAME,"nickname").send_keys(username + Keys.ENTER)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM