selenium获取元素内容,iframe切换,和常用方法

  • 获取元素信息

    1. text 属性,显示该元素在web页面显示出来的文本内容

    2. get_attribute方法

      获取某个属性的值:

        element.get_attribute(元素属性)

        element.get_attribute('href')

        element.get_attribute('style')

      获取该元素对应HTML源代码:

        element.get_attribute('outerHTML')

      获取该元素的内部部分的HTML源代码:

        element.get_attribute('innerHTML')

  • BeautifulSoup4库  

    这种方式使用的频率很少,大家可以百度查找详细的介绍信息。

  • 隐士等待时间

    driver.implicitly_wait(10)

  • 显示等待

    from selenium.webdriver.support.ui import WebDriver

    from selenium.webdriver.support import expected_conditions as EC

    from selenium.webdriver.common.by import By    

    ele = WebDriverWait(driver,60)

 

    until(EC.presence_of_element_located((By.ID,'username')))

 

    #等待60s,知道一个元素出现,id为username的元素

      举个实例:  

#为id为1的元素先设置隐士等待=60秒,无论找到未找到,隐士等待时间都会重置为10秒
driver.implicitly_wait(60)
try:
    ele = driver.find_element_by_id('1')
    print (ele.text)

    if ele.text.startswith('松勤网 - 松勤软件测试')
        print('pass')
    else:
        print('fail')
except:
    print('exception happend')
finally:
    driver.implicitly_wait(10)
  • frame处理 : 网页中内嵌的网页,frame/iframe

      切换frame

        driver.switch_to.frame(frame_reference)

          1. frame元素的name属性或者ID属性

          2. 索引值(从0开始)

          3. frame所对应的WebElement :   driver.find_element_by_tag_name("iframe")

      切换回主html里面:  driver.switch_to.default_content() 

  • 清除元素中的字符串

    clear方法  :  input1.clear()

  • 获取文本框中输入的内容

    get_attribute() : 获取input元素里面输入的文本内容

    input1.get_attribute('value')

  • 单选框

    type = "radio"

    click()方法选择 : 不管原来该元素是否选中,直接去点击该元素没有问题都可以确保该单选框选中

  • 勾选框

    type = "checkbox"

    click()方法选择 

    is_selected()方法来获取选择的状态:

        True :已经选中

        False:未选中

  • 复选框

    select,有multiple可以多选,不写则单选    

    可以用selenium的Select类

    导入类: from selenium.webdriver.support.ui import Select

    方法deselect_all() : 清掉所有选中的元素

    方法select_by_visible_text("值"):根据复选框中文本信息选中

    实例如下:  

#导入Select类
from selenium.webdriver.support.ui import Select
#获得相应的WebElement
select = Select(driver.find_element_by_id("multi"))
#去除选择所有的选项
select.deselect_all()
select.select_by_visible_text("雅阁")
select.select_by_visible_text("宝马 740")

#获得相应的WebElement
select = Select(driver.find_element_by_id("single"))
select.select_by_visible_text("")
  • 获取标题

    driver.title

  • 获取当前url

    driver.current_url

  • 简单的断言

       assert   driver.title == "松勤_百度搜索"   ---  当前浏览器的标题是否是“松勤_百度搜索”

  • 截屏

    driver.get_screenshot_as_file('ssl.png')    括号里面填写文件名称,也可以固定保存路径

  • 获取某一个元素当前的图片

    ele=driver.find_element_by_cas_selector('img[class="d-flag"]')

    ele.screenshot(r'D:\yun.png')

 

转载于:https://www.cnblogs.com/yangguanghuayu/p/11496686.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值