栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

UI自动化python中selenium交互式操作笔记

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

UI自动化python中selenium交互式操作笔记

1.【浏览器】的交互式操作

import time
from selenium import webdriver
# 定义一个变量保存创建好的驱动对象
from selenium.webdriver.common.by import By
# 1. 创建浏览器驱动对象
driver = webdriver.Chrome()
# 2. 打开目标页面
driver.get("http://121.43.169.97:8848/pageA.html")
time.sleep(1)# 1).暂停1s,查询当前窗口标题和网址
print('**'*10,'打开当前注册A窗口','**'*10)
print('查询当前窗口标题:',driver.title)
print('查询当前窗口网址:',driver.current_url)
# 3. 业务操作
time.sleep(1)# 2).暂停1s,设置窗口宽度:500px,高度:700px
driver.set_window_size(500, 700)
time.sleep(1)# 3).暂停1s,设置窗口位置:x=0px,y=500px
driver.set_window_position(0, 500)
driver.maximize_window()# 4).最大化窗口打开超链接百度
driver.find_element(By.LINK_TEXT, "百度").click()
time.sleep(1)# 5).暂停1s,返回注册A页面
driver.back()#返回
time.sleep(1)# 6).暂停1s,前进到百度页面
driver.forward()#前进
time.sleep(1)# 7).暂停1s,刷新百度页面
driver.refresh()#刷新并查询当前窗口标题和网址
print('**'*10,'在当前窗口打开百度','**'*10)
print('查询当前窗口标题:',driver.title)
print('查询当前窗口网址:',driver.current_url)
driver.back()#返回上一窗口
time.sleep(1)#8).暂停1s新窗口打开百度并查询当前窗口标题和网址
driver.find_element(By.PARTIAL_LINK_TEXT, "访问 百度").click()
print('**'*10,'在当前窗口打开新窗口百度','**'*10)
print('查询当前窗口标题:',driver.title)
print('查询当前窗口网址:',driver.current_url)
time.sleep(1)# 9).暂停1s,查询窗口权柄数量和切换窗口
handles = driver.window_handles#打开窗口权柄结果赋值handles
print('查询已打开窗口数量:',len(handles))
driver.switch_to.window(handles[1])#初始值为[0]第二个窗口为[1]
print('**'*10,'在当前窗口切换新窗口百度','**'*10)
print('查询当前窗口标题:',driver.title)#查询当前窗口标题和网址
print('查询当前窗口网址:',driver.current_url)
driver.close()#10).关闭当前窗口
print('**'*10,'关闭新窗口百度并退出','**'*10)
'''可以理解为第一个打开的窗口为当前窗口活动窗口主窗口再点开的新增窗口为子窗口'''
# 4. 暂停3秒
time.sleep(1)
# 5. 关闭浏览器驱动对象
driver.quit()

2.【弹出框】【下拉框】【鼠标】【键盘快捷键】的交互式操作

import time
from selenium import webdriver
from selenium.webdriver import ActionChains#导包鼠标
# 定义一个变量保存创建好的驱动对象
from selenium.webdriver.common.by import By
# 1. 创建浏览器驱动对象
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
# 2. 打开目标页面
driver.get("http://121.43.169.97:8848/pageA.html")
###开始弹出框###
driver.find_element(By.ID,'alerta').click()
alert=driver.switch_to.alert
print(alert.text)#1)调用弹出框#打印弹出框文本
alert.accept()##2)接受弹出框
time.sleep(1)
driver.find_element(By.ID,'confirma').click()
confirma=driver.switch_to.alert
confirma.dismiss()#3)取消弹出框
time.sleep(1)
driver.find_element(By.ID,'prompta').click()
prompta=driver.switch_to.alert
time.sleep(1)#接受弹出框
prompta.accept()
###开始下拉框###
print(driver.get_window_size())#4)打印页面宽高
js = "window.scrollTo(0,1000)"#5)(x,y)向下y数字拖动
driver.execute_script(js)
time.sleep(1)#(x,y)向y拖动
js = "window.scrollTo(0,200)"
driver.execute_script(js)
time.sleep(1)#6)点击首行
driver.find_element(By.ID,'scrollup').click()
###开始鼠标###
action = ActionChains(driver)#7)调用【右击】
userA=driver.find_element(By.ID,'userA')
action.context_click(userA).perform()
time.sleep(2)#8)调用【悬停】
button=driver.find_element(By.CSS_SELECTOR,'button')
action.move_to_element(button).perform()
userA.send_keys('admin')#文本框输入admin
time.sleep(2)#9)调用【双击】选中admin
action.double_click(userA).perform()
###开始键盘###
time.sleep(2)#手机号输入123456
telA=driver.find_element(By.ID,'telA')
telA.send_keys('123456')#10)调用手机号快捷键全选a复制c
telA.send_keys(Keys.CONTROL,'a')
action.double_click(telA).perform()
telA.send_keys(Keys.CONTROL,'c')#11)#调用邮箱号快捷键粘贴v
emailA=driver.find_element(By.NAME,'emailA')
emailA.send_keys(Keys.CONTROL,'v')
# 4. 暂停3秒
time.sleep(1)
# 5. 关闭浏览器驱动对象
driver.quit()

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/926250.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号