Selenium 窗口操作与上传下载

2021-08-09 11:14:56 浏览数 (1)

窗口操作

窗口操作主要包括窗口的前进,后退、刷新、已经多个窗口操作。

实践案例

打开页面
代码语言: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

0 人点赞