2017-09-04 9 views
-2

クラウドサービスで自動ログインできるプログラムを作成しようとしています。 HTMLでユーザー名とパスワードにcorrenspondingフィールドは以下のとおりです。selenium [python]を使ってクラウドに自動ログインする

<div class="formRow"> 
    <input type="text" name="emailOrUsername" ng-model="emailOrUsername" panono-text-box= 
    "{ &quot;placeholder&quot;: &quot;states.account.logIn.emailOrUsername&quot;, &quot;required&quot;: true } 
    " panono-focus="" class="ng-pristine ng-valid panonoTextBox ng-touched" placeholder= 
    "Email or username *" spellcheck="false"> 
</div> 

<div class="formRow"> 
    <input type="password" name="password" ng-model="password" panono-text-box= 
    "{ &quot;placeholder&quot;: &quot;states.account.logIn.password&quot;, &quot;required&quot;: true } 
    " class="ng-pristine ng-untouched ng-valid panonoTextBox" placeholder="Password *" spellcheck="false"> 
</div> 

私が書いたコードは次のとおりです。

from selenium import webdriver 
from selenium.webdriver.support.ui import WebDriverWait 

usernameStr = "my_username" 
passwordStr = "my_password" 

browser = webdriver.Chrome() 
browser.get("https://mywebsite.com") 

wait = WebDriverWait(browser, 10) 
if wait: 
    username = browser.find_element_by_name("emailOrUsername"); 
    password = browser.find_element_by_name("password") 

    username.send_keys(usernameStr) 
    username.send_keys(usernameStr) 

私は、このエラーメッセージが表示されます。

上げexception_class(メッセージ、画面、スタックトレース) selenium.common.exceptions.NoSuchElementException:メッセージ:このような 要素:要素が見つかりません: { "方法": "ID"、 "セレクタ":あなたはそれらの要素を見つける必要があるように、 "emailOrUsername"}

+0

のあなたはxpath'メソッド 'と試みたの代わりがあります'name'か' id'ですか? –

答えて

1

が見えるby name代わりby id

username = browser.find_element_by_name("emailOrUsername"); 
password = browser.find_element_by_name("password") 
+0

私はまだ同じエラーを受けます – drSlump

+0

おそらくあなたは要素が利用可能になるのを待つ必要があります – Amit

+0

いつも同じ、私はコード – drSlump

関連する問題