我的账户
啄木鸟学院

专注软件测试菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

selenium_2021.02.27_代金鑫

[复制链接]
心向未来学员认证 发表于 2021-2-27 09:18:34 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
等待
1.休眠 sleep()  次选
2.隐式等待   首选
3.显式等待   一般不用

from selenium import webdriver
from selenium.webdriver.support.select import Select
from time import sleep
try:
    driver = webdriver.Chrome()
    driver.get('http://localhost/ranzhi/www/sys/user-login.html')
    driver.maximize_window()
    # 隐式等待 ---等待页面加载完成,参数为最大等待时间,单位是秒
    # 隐式等待语句只需要写一次
    #并不总是有效
    #会浪费一定的时间
    driver.implicitly_wait(10)
    # 用户名
    driver.find_element_by_id('account').send_keys('admin')
    # 密码
    driver.find_element_by_id('password').send_keys('123456')
    # 登陆
    driver.find_element_by_id('submit').click()
    # sleep(2)
    # 点击 “后台管理”
    driver.find_element_by_id('s-menu-superadmin').click()
    # sleep(1)
    # 定位iframe
    iframe = driver.find_element_by_id('iframe-superadmin')
    # 切换到iframe中
    driver.switch_to.frame(iframe)
    # 点击 “添加成员”
    driver.find_element_by_xpath('//*[@id="shortcutBox"]/div/div[1]/div/a/h3').click()
    # sleep(1)
    driver.find_element_by_id('account').send_keys('tom')
    driver.find_element_by_id('realname').send_keys('Tom Cruse')
    driver.find_element_by_id('genderm').click()
    # 索引从0开始
    # 选择部门
    select = driver.find_element_by_id('dept')
    depts = Select(select)
    # 根据value选择部门
    depts.select_by_value('10')
    # 选择角色
    select = driver.find_element_by_id('role')
    roles = Select(select)
    # 根据文本选择角色
    roles.select_by_visible_text('项目经理')
    driver.find_element_by_id('password1').send_keys('123456')
    driver.find_element_by_id('password2').send_keys('123456')
    driver.find_element_by_id('email').send_keys('tom@163.com')
    # 保存
    driver.find_element_by_id('submit').click()
    sleep(2)
    # 点击删除
    driver.find_element_by_xpath('/html/body/div/div/div/div[2]/div/div/table/tbody/tr[2]/td[11]/a[3]').click()
    # 点击取消
    driver.switch_to.alert.dismiss()
    # driver.find_element_by_xpath('/html/body/div/div/div/div[2]/div/div/table/tbody/tr[2]/td[11]/a[3]').click()
    # 点击确定
    # driver.switch_to.alert.accept()
except Exception as e:
    print(e)
finally:
    # sleep(2)
driver.quit()
from selenium import webdriver
from selenium.webdriver.common. by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from time import sleep
try:
    driver = webdriver.Chrome()
    driver.get('https:///www.baidu.com')
    driver.maximize_window()
    # By.ID 定位
    # driver.find_element_by_id('kw').send_keys('元宵节')   专用
    driver.find_element(By.ID,'kw').send_keys('元宵节')   # 通用  
    # 显式等待
    # driver   浏览器
    # 5   最大等待时间
    #0.5   检查时间间隔
    # until()  等待结束的条件
    # 目标元素的定位方式必须以元组的方式出现
    element = WebDriverWait(driver,5,0.5).until(EC.presence_of_element_located((By.ID,'su')))
    element.click()
except Exception as e:
    print(e)
finally:
    sleep(2)
    driver.quit()

回复

使用道具 举报

关注0

粉丝0

帖子23

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注软件测试菁英教育

客服电话:17792550360

客服时间:9:00-21:00

卓目鸟学苑 - 专注软件测试菁英教育!( 陕ICP备20001493号-1 )

版权所有 © 西安菁英教育科技有限公司 2023-2026