window_handles
とswitch_to_window
メソッドを使用するとできます。最初のリンクをクリックする前に
を移動するために、ウィンドウメソウへの切り替えを実行し
window_after = driver.window_handles[1]
としてリンクストア新しく開いたウィンドウのウィンドウハンドルをクリックした後
window_before = driver.window_handles[0]
としてウィンドウハンドルを保存します新たに開いたウィンドウに
driver.switch_to_window(window_after)
同様に、あなたは賭けを切り替えることができます古いものと新しいものを分け合わせる。私たちは「switchTo」方法使用して、指定されたウィンドウ間で移動することによって、異なるウィンドウを扱うことができ
import unittest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
class GoogleOrgSearch(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Firefox()
def test_google_search_page(self):
driver = self.driver
driver.get("http://www.cdot.in")
window_before = driver.window_handles[0]
print window_before
driver.find_element_by_xpath("//a[@href='http://www.cdot.in/home.htm']").click()
window_after = driver.window_handles[1]
driver.switch_to_window(window_after)
print window_after
driver.find_element_by_link_text("ATM").click()
driver.switch_to_window(window_before)
def tearDown(self):
self.driver.close()
if __name__ == "__main__":
unittest.main()
あなたのコードに続いて、 'window_after = browser.window_handles [1]'を実行すると 'IndexError:list index of range'を受け取ります。なにが問題ですか?参照:https://stackoverflow.com/questions/45354850/focus-on-second-page-form-with-selenium – LucSpan