小さなウィンドウ/ポップアップ/iframe を開くリンクをクリックすると、ポップアップ ウィンドウに Xpath が表示されます。
//html/body/div[2]
すなわち。window_id はありませんが、firebug では識別子がウィンドウを として表示する<div class="some_name">
ので、ポップアップ ウィンドウであると想定しています。私が間違っている場合は修正してください。
Selenium IDE の selectPopup を使用すると、メイン ウィンドウから popup/new_window に切り替える際に問題なく動作しますが、webdriver-python にエクスポートする場合、そのオプションはありません。だから私は上記のxpathdriver.switch_to_window
と一緒に使用しようとしましたが、うまくいきませんでした。switch_to_frame
driver.switch_to_frame(driver.find_element_by_xpath("//html/body/div[2]"))
エラーがスローされました:NoSuchElementException
これは、iframe を選択できないためです。
Selenium IDEで正常に動作しているため、wait_for_element句をに変換したpython-webdriverにエクスポートしました
for i in range(60):
try:
if self.is_element_present(By.XPATH, "//*[@id='heading']/div[2]/div/div/ul/li[2]/a"): break
except: pass
time.sleep(1) else: self.fail("time out")
上記のエラーを返します
詳細な html :
//*[@id='heading']/div[2]/div/div/ul/li[2]/a
要素の xpath であり、html として、これはそれが何であるかと<a href="/my_url/test/Home/">Home</a>
詳細です: `
<div class="help">
<div class="page-header">
<div id="heading">
<div id="search">
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<ul class="nav">
<li class="active">
<li>
<a href="/my_url/test/Home/">Home</a>
</li>
<li>
<li>
<li>
</ul>
<form class="navbar-form pull-right">
</div>
</div>
</div>
</div>`