簡體   English   中英

我找不到使用 python selenium 輸入文本的元素

[英]I can't find element to enter text with python selenium

我正在嘗試在 email 框中輸入文本,但 find_element_by_name 似乎不起作用。 誰能幫我找出為什么它不起作用? 這是代碼

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

browser = webdriver.Chrome(executable_path=r"C:\Users\Brandon\PycharmProjects\chromedriver.exe") 
browser.get('https://discordapp.com/channels/@me')
time.sleep(10)

email = browser.find_element_by_name(email) 
email.send_keys('hi') 
email.send_keys(Keys.TAB)

檢查 email 聊天框

我認為您應該通過 xpath 找到元素。 它的類型所以試試這個:

from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
import os
username = os.environ.get('USERNAME')
desktop = 'c:\\users\\' + username + '\\desktop\\'
driver = webdriver.Chrome(executable_path=desktop +"chromedriver.exe")
driver.get('https://discordapp.com/channels/@me')
time.sleep(10)
email = driver.find_element_by_xpath('//*[@type="email"]')
email.send_keys('hi')
email.send_keys(Keys.TAB)

我檢查了它的工作原理

您錯過了引號,因為您正在尋找一個字符串,否則您要查看 email 作為變量包含的內容(您尚未聲明它,因此出現錯誤):

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

browser = webdriver.Chrome(executable_path=r"C:\Users\Brandon\PycharmProjects\chromedriver.exe") 
browser.get('https://discordapp.com/channels/@me')
time.sleep(10)

email = browser.find_element_by_name('email') 
email.send_keys('hi') 
email.send_keys(Keys.TAB)

暫無
暫無

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

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