2017-01-08 88 views
2

我可以通過類名找到它存在的元素,但我不知道如何選擇它本身並向其發送文本。如何使用硒和python插入文本到輸入標籤

目前代碼:

editor = browser.find_element_by_class_name('editor') 
editor.send_keys('text') 

元我想選擇:

<input type="text" tabindex="103" placeholder="" style="width: 444px;"> 

錯誤:

File "C:\Python35\lib\site-packages\selenium\webdriver\remote\webelement.py", line 347, in send_keys 
    self._execute(Command.SEND_KEYS_TO_ELEMENT, {'value': keys_to_typing(value)}) 
    File "C:\Python35\lib\site-packages\selenium\webdriver\remote\webelement.py", line 494, in _execute 
    return self._parent.execute(command, params) 
    File "C:\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute 
    self.error_handler.check_response(response) 
    File "C:\Python35\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 192, in check_response 
    raise exception_class(message, screen, stacktrace) 
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot focus element 
    (Session info: chrome=55.0.2883.87) 
    (Driver info: chromedriver=2.27.440174 (e97a722caafc2d3a8b807ee115bfb307f7d2cfd9),platform=Windows NT 10.0.14393 x86_64) 

回答

2

元喲你嘗試選擇沒有類名稱。嘗試

from selenium.webdriver.common.by import By 
from selenium.webdriver.support.ui import WebDriverWait 
from selenium.webdriver.support import expected_conditions as EC 

editor = WebDriverWait(browser, 10).until(EC.visibility_of_element_located((By.XPATH, '//input[@type="text"][@tabindex="103"]'))) 
editor.send_keys('text') 
+0

當我想我收到此錯誤:'selenium.common.exceptions.ElementNotVisibleException:消息:元素未visible' –

+0

檢查更新的答案 – Andersson

+0

我得到這個錯誤,並進行搜查,但沒有骰子:'編輯= WebDriverWait(瀏覽器,10 ).until(EC.visibility_of_element_located((By.XPATH,'// input [@ type =「text」] [@ tabindex =「103」]'))) 文件「C:\ Python35 \ lib \ site-packages \ selenium \ webdriver \ support \ wait.py「,第80行,直到 raise TimeoutException(message,screen,stacktrace) selenium.common.exceptions.TimeoutException:消息:' –

0

嘗試editor.click()editor.send_keys('text')之前,看看它是否工作。

+0

光標在正確的區域彈出,但出現相同的錯誤消息。 –

+0

你也許用Firefoxdriver或IEdriver來試試這個嗎? – acikojevic

相關問題