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

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()

Selenium 3----WebDriver常用方法的更多相关文章

  1. Selenium的webdriver的常用方法,鼠标事件

    就来认识 WebDriver 中最常用的几个方法: get():跳转到的地址clear(): 清除文本. send_keys (value): 模拟按键输入. click(): 单击元素. 示例: f ...

  2. selenium - webdriver常用方法

    先定位元素,定位元素后,需要对元素进行后续操作,单击按钮/输入文本,等等. from selenium import webdriver driver = webdriver.Chrome() dri ...

  3. Python Selenium Webdriver常用方法总结

    Python Selenium Webdriver常用方法总结 常用方法函数 加载浏览器驱动: webdriver.Firefox() 打开页面:get() 关闭浏览器:quit() 最大化窗口: m ...

  4. Selenium:WebDriver简介及元素定位

    参考内容:官方API文档,下载链接:http://download.csdn.net/detail/kwgkwg001/4004500 虫师:<selenium2自动化测试实战-基于python ...

  5. Python+Selenium(webdriver常用API)

    总结了Python+selenium常用的一些方法函数,以后有新增再随时更新: 加载浏览器驱动: webdriver.Firefox() 打开页面:get() 关闭浏览器:quit() 最大化窗口:  ...

  6. (四)WebDriver常用方法

    点击和输入 前面我们已经学习了定位元素, 定位只是第一步, 定位之后需要对这个元素进行操作, 或单击(按钮) 或输入(输入框) , 下面就来认识 WebDriver 中最常用的几个方法: clear( ...

  7. 【转】selenium及webdriver的原理

    主要内容转自:http://blog.csdn.net/ant_ren/article/details/7968582和http://blog.csdn.net/ant_ren/article/det ...

  8. selenium及webdriver的原理

    主要内容转自:http://blog.csdn.net/ant_ren/article/details/7968582和http://blog.csdn.net/ant_ren/article/det ...

  9. selenium和webdriver区别

    接触selenium大概半年时间了.从开始的预研,简单的写个流程到后期的自动化框架的开发,因为本人不属于代码方面的大牛,一直的边研究边做.逐步深入学习.近期发现自己对本身selenium的发展还存在困 ...

  10. selenium调用webdriver异常

    使用selenium调用webdriver的时候报错. from selenium import webdriver browser = webdriver.Chrome() browser.get( ...

随机推荐

  1. SSH框架之hibernate《三》

    Hibernate03     一.多表设计         1.1多表设计的总则             问题:我们为什么要学习多表映射?             答:                ...

  2. word20161228

    1.principles英[p'rɪnsəplz]美[p'rɪnsəplz]n.原则; 原理; 准则; 道义; 节操; 原则( principle的名词复数 ); 工作原理; [P-] (基督教科学派 ...

  3. Java 自定义hashmap和hashtable的key注意哪些问题

  4. Tomcat zabbix监控、jmx监控、zabbix_java_gateway

    几种方式监控tomcat,如标题. 下面就是参考的网上的连接.自己可以试一下. 由于牵扯到jvm的很多东西, 在这里就只是粘贴处连接参考. http://www.cnblogs.com/chrisDu ...

  5. 2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算

    2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算 经过第一阶段的学习,同学们已经熟悉了这门语言基本的用法.在一次又一次对着电脑编写并提交代码,进行练习的时候,有没有觉 ...

  6. mysql数据库基本语句

    我们除了可以在mysql数据库或phpmyadmin中登陆数据库我们还可以使用linux中命令进行创建,下面我来给大家介绍一个简单的数据库创建方法吧. 首选用putty连接linux服务器,进行命令行 ...

  7. Shell的类型

    1.类Unix系统中有各种shell.如: /bin/bash /bin/csh /bin/ksh /bin/sh /bin/tcsh /bin/zsh 2.在/etc/shells文本文件中可以查看 ...

  8. SignalR 实时推送消息

    业务场景 以前做过一个东西,就是当数据库有数据更新的时候,能够自动更新到前台,那时候signalr还没出现的时候,需要自己实现轮询读库,对于数据库和程序都是比较郁闷的事情.现在利用SignalR解决数 ...

  9. Hbase合并Region的过程中出现永久RIT的解决

    在合并Region的过程中出现永久RIT怎么办?笔者在生产环境中就遇到过这种情况,在批量合并Region的过程中,出现了永久MERGING_NEW的情况,虽然这种情况不会影响现有集群的正常的服务能力, ...

  10. Java_打印从一个数到另一个数之间的整数,并每5个为一行

    import java.util.Scanner; public class Dayin_100 { public static void main(String[] args) { System.o ...