窗口操作
窗口操作主要包括窗口的前进,后退、刷新、已经多个窗口操作。
实践案例
打开页面
代码语言:javascript复制from selenium import webdriver
import time
driver=webdriver.Firefox()
print("打开拓维首页")
driver.get("http://www.talkweb.com.cn")
#print("设置浏览器宽480 高800 ")
#driver.set_window_size(480,800)
#打开联系我们页面
print("打开联系我们页面")
driver.get("http://www.talkweb.com.cn/contact/")
time.sleep(3)
页面访问前进/后退相关操作
代码语言:javascript复制#回退到首页
print("回退到首页")
driver.back()
time.sleep(3)
#前进到联系我们页面
print("前进到联系我们页面")
driver.forward()
print("刷新当前页面")
driver.refresh()
print("显示当前页面标题")
title=driver.title
print(title)
print("显示当前URL")
now_url=driver.current_url
print(now_url)
多窗口切换
案例:
打开我要自学网Selenium课程主页,然后打开2-1课程详情页面,再回到课程主页打开3-1课程详情页面
代码语言:javascript复制from selenium import webdriver
from time import sleep
driver=webdriver.Firefox()
#打开Selenium课程页面
driver.get("http://www.51zxw.net/list.aspx?cid=615")
# 获取课程主页的窗口句柄
selenium_index=driver.current_window_handle
sleep(2)
#点击2-1课程链接。进入课程详情页面
driver.find_element_by_partial_link_text('2-1').click()
sleep(4)
#跳转到课程主页窗口,点击3-1课程
driver.switch_to.window(selenium_index)
sleep(3)
driver.find_element_by_partial_link_text('3-1').click()
sleep(3)
driver.quit()
警告弹窗处理
案例:点击百度首页设置按钮,然后进入搜索设置页面,点击“保存设置”或“恢复默认”按钮,处理警告弹窗窗口
代码语言:javascript复制
from selenium import webdriver
from time import sleep
driver=webdriver.Firefox()
driver.get("http://www.baidu.com")
driver.find_element_by_link_text('设置').click()
sleep(2)
driver.find_element_by_link_text('搜索设置').click()
sleep(3)
driver.find_element_by_link_text('保存设置').click()
# driver.find_element_by_link_text('恢复默认').click()
sleep(3)
#处理警告窗口
alert_window=driver.switch_to_alert()
alert_window.accept()
sleep(2)
sleep(2)
driver.quit()
文件上传
代码语言:javascript复制from selenium import webdriver
import os
driver=webdriver.Firefox()
file_path="file:///E:\Desktop\seleniumCode\upfile.html"
driver.get(file_path)
driver.find_element_by_name("file").send_keys("E:\Desktop\seleniumCode\open_gzb.py")
文件下载
代码语言:javascript复制#下载文件
driver.get("http://jmeter.apache.org/download_jmeter.cgi")
#浏览器下载属性设置
fp=webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2) #设置浏览器下载路径,0表示默认,2表示指定路径
fp.set_preference("browser.download.manager.showWenStarting",True) #是否显示开始
fp.set_preference("browser.download.dir","E:\Desktop") #指定下载保存的路径
driver=webdriver.Firefox(firefox_profile=fp)
driver.get("http://jmeter.apache.org/download_jmeter.cgi")
driver.find_element_by_partial_link_text("apache-jmeter-3.0.tgz").click()
更多干货
- Webdriver简介
- 8.9 Selenium元素定位方式
- Selenium 元素checkbox元素操作与元素等待
- Selenium 鼠标键盘操作与滚动条控制
- Appium连续滑动操作——九宫格滑动
- Appium Android Toast元素识别
- Android H5元素定位
- Mac 环境Appium自动化测试环境搭建
- 众里寻他千百度—Appium Android 元素定位方式
- Android自动化测试设备弹窗处理
- Ubuntu Docker STF环境搭建
- Mac OS环境搭建STF
- Python自动化日志收集
- Appium参数配置—yaml