我在將密鑰發送到谷歌登錄框中的用戶名和密碼字段時遇到問題。 Selenium發現了id爲「Email」和「Passwd」的webelements,但我無法發送任何密鑰給他們。讓硒將密鑰發送到谷歌的登錄框中(用python編碼)
這裏有沒有產生預期的結果代碼:
from selenium import webdriver
#from selenium.webdriver.common.keys import Keys
import time
username = "test"
password = "ninja"
driver = webdriver.Firefox()
driver.get(u'http://www.google.com')
driver.implicitly_wait(10)
elem = driver.find_element_by_id("gb_70")
elem.click()
username = driver.find_element_by_id('Email')
username.send_keys(username)
此代碼生成錯誤:
Traceback (most recent call last): File "SERPkopi.py", line 18, in username.send_keys(username) File "/Users/Sverdrup/virtualenv-1.6.1/Alert/lib/python2.7/site- packages/selenium/webdriver/remote/webelement.py", line 142, in send_keys local_file = LocalFileDetector.is_local_file(*value) File "/xxxxx/xxxxxx/virtualenv-1.6.1/Alert/lib/python2.7/site- packages/selenium/webdriver/remote/webelement.py", line 253, in is_local_file for i in range(len(val)): TypeError: object of type 'WebElement' has no len()
這是奇怪的,因爲相同的代碼可以寫信給谷歌的「Q '(查詢)字段
我試圖通過id,name,xpath來識別webElement無濟於事。
背景,爲什麼:
我得到了我的眼睛打開谷歌今天警告,並希望建立在我公司的客戶的名字警報(這是一個企業對企業設置的,所以客戶是公司本身)。客戶相對較少,我不認爲我會在他們的姓名上收到很多提醒,但能夠跟蹤他們會很好。
看到如何沒有API的谷歌警報,我想我會用硒以編程方式輸入幾百名客戶的名字。我首先必須能夠登錄到我的帳戶,雖然...
我會realy欣賞所有和任何幫助。
真誠
@root感謝您的意見,我會相應地編輯問題。我試過xpath。我可以得到webelement,這不是問題。我只是不能發送密鑰。 – Rookie
僅供參考@root,問題已更新。 – Rookie