2017-09-04 17 views
1

私はpython-seleniumスクリプトを使用して、gmailのメインページの右上隅にある「サインイン」ラベルをクリックしようとしています。このクラスの正しいxpathは、ブラウザツールを使用している間は問題なく動作しているようですが、スクリプトがxpathを使用して同じ要素を見つけようとすると失敗しました。私はあなたが正しい方向に私を向けることができれば大いに感謝します。ありがとう!セレンスクリプトのxpath要素を見つけることができません

URL:https://www.google.com/gmail/about/

PS:私はセレンに新しい相対よ。私がこの問題に間違ったやり方で近づいているなら、私の無知を許してください。

browser.get('https://www.google.com/gmail/about/') 

は別のURLにリダイレクト他のように見えると、要求が失敗します:

from selenium import webdriver 
from selenium.webdriver.common.keys import Keys 
from pyvirtualdisplay import Display 
from selenium import webdriver 

display = Display(visible=0, size=(1920, 1080)) 
display.start() 
browser = webdriver.Firefox() 
browser.get('https://www.gmail.com') 
print (browser.title) 
g_login=browser.find_element_by_xpath("//a[@class='gmail-nav__nav-link gmail-nav__nav-link__sign-in']") 
g_login.click() 
+0

クロム現像ツールを使用することをおすすめします。この 'xpath'のものには本当にうれしいです –

+0

あなたの' xpath'は正しいです私はいくつかの他の問題があると思います –

答えて

0

あなたは、あなたのポストに上記提供同じURLを使用する必要があります。

+0

あなたの提案をありがとうございます。リダイレクトのように見え、タイミングの問題によって問題が発生していました。リダイレクトのシナリオを処理するためのよりよい方法はありますか? – user2483231

+0

この[投稿](https://stackoverflow.com/questions/2014168/how-to-get-selenium-to-wait-for-a-transition-page-to-redirect-before-running-an)をチェックすることができます)詳細は – PRMoureu

+1

ありがとう!私はちょうどスクリプトからスクリーンショットを撮った、あなたは正しい、それは全く別のURLをヒットしていた。なぜ私は同じURLから2つの異なるリダイレクトを受信して​​いるのか分かりませんが、それは問題を引き起こすようです。そのすべて今良い。 – user2483231

関連する問題