我有一种情况,我点击一个按钮打开一个新的浏览器窗口。有没有办法连接到新打开的窗口?并使用它,然后返回到原始浏览器(第一个窗口)。
谢谢。
经过网上的彻底调查后,我设法让一些代码正常工作
Currentwindow = driver.window_handles
Likebutton = driver.find_element_by_css_selector(".single_like_button .btn3").click()
newwindow = driver.window_handles
newwindow = list(set(newwindow) - set(Currentwindow))[0]
driver.switch_to.window(newwindow)
driver.find_element_by_id("watch-like").click()
driver.implicitly_wait(5)
driver.close()
问题是命令driver.implicitly_wait(5)
由于某种原因无法正常工作,页面会自动关闭,这不是我想要的。
我如何让它运作?
答案 0 :(得分:3)
driver.switch_to.window(handle)
将焦点切换到指定的窗口。 handle
可以是名称或窗口句柄。
您可以使用
driver.window_handles
查找窗口句柄列表。
您可能会发现这些功能很有用:
driver.switch_to.active_element
driver.switch_to.default_content
driver.switch_to.parent_frame
driver.switch_to.alert
driver.switch_to.frame
driver.switch_to.window
答案 1 :(得分:0)
driver.implicitly_wait(5)
此命令等待,页面加载或5秒。 如果它将在1秒内加载,那么
driver.close()
1秒后运行。 如果它在7秒内加载,那么
driver.close()
5秒后运行
您可以使用
import time
time.sleep(5)
无论如何它将等待5秒