一、frame 切换
frame框架是指在一个网页中,可以轻松套上另外一个网页。对于html标签有<iframe>、<frameset>、<frame>
必须先切换到frame界面
from selenium import webdriver
import time
#webdriver 获取浏览器的对象
driver = webdriver.Chrome("chromedriver.exe")
#准备一个网址
url = "http://mail.qq.com/"
driver.get(url)
time.sleep(2)
print(driver.find_element_by_class_name("login_pictures_title").text)
#切换到frame界面
driver.switch_to.frame("login_frame")
driver.find_element_by_id("u").send_keys("12345678")
time.sleep(2)
#切换到原始的界面
driver.switch_to.default_content()
print(driver.find_element_by_class_name("login_pictures_title").text)
time.sleep(5)
#回收资源
driver.quit()
二、窗口切换
多窗口:一个浏览器程序,可以打开多个网页,每个网页构成了浏览器的一个“标签”。
from selenium import webdriver
import time
#webdriver 获取浏览器的对象
driver = webdriver.Chrome("chromedriver.exe")
#准备一个网址
url = "http://www.baidu.com/"
driver.get(url)
driver.maximize_window()
time.sleep(2)
print(driver.maximize_window)
print(driver.current_window_handle)
driver.find_element_by_id("kw").send_keys("美女")
driver.find_element_by_id("su").click()
time.sleep(2)
driver.find_element_by_id("1").click()
time.sleep(2)
print(driver.maximize_window)
print(driver.current_window_handle)
#driver.close()
#切换页面的方式,获取当前的handle
driver.switch_to.window(driver.window_handles[1])
driver.find_element_by_id("currentImg").click()
time.sleep(5)
#回收资源
driver.quit()
三、截图
driver.get_screenshot_as_file(保存路径)