打开页面、断言校验及关闭浏览器会话
driver.quit() vs driver.close() 的区别,以及浏览器进程清理
driver.quit() · driver.close() · driver.get()get() 打开 URL · close() 关闭当前标签 · quit() 退出整个浏览器进程。
from selenium import webdriver
driver = webdriver.Chrome()
# ① 打开页面
driver.get("https://www.example.com")
print(driver.title)
# ② 新开标签(JS 方式,最常用)
driver.execute_script("window.open('https://www.baidu.com');")
# ③ 切换到新标签
handles = driver.window_handles
driver.switch_to.window(handles[-1])
print(driver.current_url) # → 百度
# ④ 切回原来的标签
driver.switch_to.window(handles[0])
# ⑤ 关闭当前标签(如果只剩一个,driver.close() 之后 driver 会失效!)
driver.close()
# ⑥ 退出整个浏览器(关所有标签 + 杀 chromedriver)
driver.quit()
# ⚠️ close() 只关当前 tab;quit() 全关
# ⚠️ 脚本结束必须调 quit(),否则 chromedriver 残留进程!
www.baidu.com 和 www.example.com(用 JS 新开标签),然后 只关闭 example 那个标签,最后 print 当前还剩几个窗口driver.quit() 会怎样?任务管理器里会多出什么进程?driver.get("https://...") 和 driver.execute_script("window.location='...'") 有什么区别?driver.window_handles + switch_to.window() 切换