2017-09-16 18 views
0

以下は私のコードです。意外にも、同じコードを1行ずつ実行すると、期待どおりに動作しています!Python 3.6でWebログインを使用してWebログインを自動化しようとしているときにエラーが発生しました。

from selenium import webdriver 
browser=webdriver.Chrome() 
browser.maximize_window() 
browser.get('https://www.gmail.com') 
email=browser.find_element_by_xpath('//*[@id="identifierId"]') 
email.send_keys('my email-id') 
next=browser.find_element_by_xpath('//*[@id="identifierNext"]/content/span') 
next.click() 
browser.implicitly_wait(9) 
passwd=browser.find_element_by_xpath('//*[@id="password"]/div[1]/div/div[1]/input') 
passwd.send_keys('mypassword') 
next1=browser.find_element_by_xpath('//*[@id="passwordNext"]/content/span') 
next1.click() 

エラー:

selenium.common.exceptions.WebDriverException: Message: unknown error: Element <span class="RveJvd snByac">...</span> is not clickable at point (942, 426). Other element would receive the click: <div class=" 
ANuIbb IdAqtf" jsname="k4HEge" tabindex="0"></div> 
    (Session info: chrome=61.0.3163.91) 
    (Driver info: chromedriver=2.32.498550 (9dec58e66c31bcc53a9ce3c7226f0c1c5810906a),platform=Windows NT 6.1.7601 SP1 x86_64) 
+0

あなたのHTMLコードを表示してください。このxpathが見つかりません – zsbappa

+0

@zsbappa:パスワードのHTMLコード:

答えて

0

はあなたのために動作するはずですあなたの問題は、コードの下

 from selenium import webdriver 
     browser=webdriver.Chrome() 
     browser.maximize_window() 
     browser.get('https://www.gmail.com') 
     email=browser.find_element_by_xpath('//*[@id="identifierId"]') 
     email.send_keys('my email-id') 
     next=browser.find_element_by_xpath('//*[@id="identifierNext"]/content/span') 
     next.click() 
     passwd=browser.find_element_by_name("password") 
     passwd.send_keys('mypassword') 
     next1=browser.find_element_by_xpath('//*[@id="passwordNext"]/content/span') 
     next1.click() 
+0

パスワードプロンプトで停止しています。 –

+0

かもしれません。今解決していますか? – zsbappa

+0

問題が解決したら、答えを受け入れてください!! – zsbappa

0

を解決することを願っています。基本的な考え方は、パスワードフィールドがDOM内に入るまで待つことです

from selenium import webdriver 
browser=webdriver.Chrome() 
browser.maximize_window() 
browser.get('https://www.gmail.com') 
email=browser.find_element_by_xpath('//*[@id="identifierId"]') 
email.send_keys('my email-id') 
next=browser.find_element_by_xpath('//*[@id="identifierNext"]/content/span') 
next.click() 
passwd=browser.find_element_by_xpath("//input[@name='password']") 
wait = WebDriverWait(driver, 20) 
wait.until(EC.element_to_be_clickable(passwd)) 
passwd.send_keys('mypassword') 
next1=browser.find_element_by_xpath('//*[@id="passwordNext"]/content/span') 
next1.click() 
+0

ファイル "web.py"、行10 WebDriverWait wait = new WebDriverWait(driver、20); ^ SyntaxError:無効な構文 –

+0

暗黙の待機を追加してエラーを解決しました。 browser.implicitly_wait(9) –

+0

偉大な..それはあなたのために働いた場合は答えを受け入れてください。 – Kapil

関連する問題