zoukankan      html  css  js  c++  java
  • Selenium 3----WebDriver常用方法

    在学会定位元素的基础上,进行元素的操作。

    WebDriver常用方法

    • clear(): 清除文本。

    • send_keys (value): 模拟按键输入。

    • click(): 单击元素。

    • submit():用于提交表单

    from selenium import webdriver

    driver = webdriver.Chrome()

    driver.get("https://www.baidu.com")

    driver.find_element_by_id("kw").clear()  #“kw”为搜索输入的id,首先保证搜素输入的关键字为空

    driver.find_element_by_id("kw").send_keys("Free Pron tube") #然后模拟按键输入想要检索的关键字

    driver.find_element_by_id("su").click() #“su”为回车键或按键“百度一下”的id,单击“百度一下”

    driver.quit() #退出当前浏览器

    submit()可以与 click()方法互换来使用, submit()同样可以提交一个按钮, 但 submit()的应用范围远不及 click()广泛。

    其他常用方法


    • size: 返回元素的尺寸。

    • text: 获取元素的文本。

    • get_attribute(name): 获得属性值。

    • is_displayed(): 设置该元素是否用户可见。

    from selenium import webdriver

    driver = webdriver.Chrome()

    driver.get("http://www.baidu.com")

    #获得输入框的尺寸
    size=driver.find_element_by_id('kw').size #获取百度输入框的宽、 高,
    print(size)

    #返回百度页面底部备案信息
    text=driver.find_element_by_id("cp").text #获得百度底部的备案信息,
    print(text)

    #返回元素的属性值,可以是id name type或其他任意属性
    attribute = driver.find_element_by_id("kw").get_attribute('type') #获得百度输入的 type 属性的值
    print(attribute)

    #返回元素的结果是否可见,返回结果为Ture或False
    result=driver.find_element_by_id('kw').is_displayed() #返回一个元素是否可见, 如果可见则返回 True, 否则返回 False。
    print(result)

    ##############

    学着玩,打开浏览器--搜索指定,回车--选择指定检索结果,点击;选择指定应该有相应的元素定位,还没学会,先用地址传送凑合

    from selenium import webdriver

    driver=webdriver.Chrome()
    driver.get('https://www.baidu.com')

    driver.find_element_by_id("kw").clear()
    driver.find_element_by_id("kw").send_keys("123")
    driver.find_element_by_id("su").submit()


    first_url='http://twinksmania.com/'
    print("now access %s"%(first_url))
    driver.get(first_url)

    second_url='http://twinksmania.com/7290-fucking-a-fragile-little-arse-kamyk-walker-david-paw/'
    print("now access %s"%(second_url))
    driver.get(second_url)

    #driver.quit()
  • 相关阅读:
    浅谈ajax
    textsizeadjust属性
    vue通信
    json、jsonp的定义和区别
    js中的eval()和catch()
    WebRTC之Android客户端
    人工神经网络(从原理到代码) Step 01 感知器 梯度下降
    简单实用的matlab柱状图显示比例及计数
    JAVA 常用包
    设置MySQL允许远程连接
  • 原文地址:https://www.cnblogs.com/nfgg/p/10593032.html
Copyright © 2011-2022 走看看