Selenium基础:浏览器操作 02
1浏览器最大化 maximize_window()
from selenium import webdriver driver = webdriver.Chrome() #浏览器最大化 driver.maximize_window() #关闭浏览器 driver.quit()
2设置浏览器的宽和高 set_window_size(宽,高)
from selenium import webdriver driver = webdriver.Chrome() #设置浏览器的宽和高 driver.set_window_size(500,900) driver.quit()
3访问网页 get()
from selenium import webdriver driver = webdriver.Chrome() #访问百度 driver.get("http://www.baidu.com/") driver.quit()
4浏览器后退 back()
#访问百度并搜索tynam,然后退回百度首页 from selenium import webdriver driver = webdriver.Chrome() import time driver.get("https://www.baidu.com/") time.sleep(3) dirver.find_elements_by_id('kw').send_keys('tynam') driver.find_elements_by_id('su').click() time.sleep(1) #操作浏览器后退 driver.back() driver.quit()
5浏览器前进 forward()
#访问百度,搜索tynam,退回百度首页,前进到搜索tynam页面 from selenium import webdriver driver = webdriver.Chrome() import time driver.get("https://www.baidu.com/") time.sleep(1) driver.find_elements_by_id('kw').send_keys('tynam') driver.find_elements_by_id('su').click() time.sleep(1) driver.back() #操作浏览器前进 driver.forward() driver.quit()
6刷新页面 refresh()
7关闭浏览器当前窗口 driver.close()
8结束进程 quit()
9获取页面title
#打印title print(driver.title)
10获取当前页面的url current_url
#单击链接 判断tynam在当前url中 from selenium import webdriver import time driver = webdriver.Chrome() driver.get("") time.sleep(1) driver.find_elements_by_link_text('tynam').click() #获取单击后的url cur_url = driver.current_url #断言tynam在当前url中 assert 'tynam' in cur_url driver.quit()
11获取页面源码 page_source
12切换浏览器窗口 switch_to.window(handle)
获取窗口句柄
current_window_handle:获取当前窗口句柄
window_handles:返回所有窗口句柄到当前会话 返回list
示例:打开第一个窗口,打印页面title,点击页面a链接打开第二个窗口,打印第二个窗口页面title
方法1
# -*-coding:utf-8-*- from selenium import webdriver import time driver = webdriver.Chrome() driver.get("") time.sleep() print(driver.title) #获得当前页面句柄 page_handle = driver.current_window_handle time.sleep(1) #单击a标签进入第二个页面 driver.find_elements_by_tag_name('a').click() time.sleep(1) #此时driver还停留在第一个页面,需要转换到第二个页面 #获取所有窗口的句柄 handles = driver.window_handles #切换到第二个页面 for handle in handles: if handle != page_handle: driver.switch_to.window(handle) print(driver.title) driver.quit()
方法2 利用list索引
#获取所有窗口句柄后 print(handles) #切换到第二个页面 driver.switch_to.window(handle[1]) print(driver.title) driver.quit()
13滚动条操作
移动到页面顶部:execute_script("window.scrollTo(document.body.scrollHeight,0)")
移动到页面底部:execute_script("0,window.scrollTo(document.body.scrollHeight)")
移动到使元素顶部与窗口的顶部对齐位置:execute_script("arguments[0].scrollIntoView();",element)
移动到使元素底部与窗口的底部对齐位置:execute_script("arguments[0].scrollIntoView(false);",element)

浙公网安备 33010602011771号