本系列主要讲解webdriver常用的API使用方法(注意:使用前请确认环境是否安装成功,浏览器驱动是否与谷歌浏览器版本对应)

一:获取页面元素的文本内容:text

  例:获取我的博客名字文本内容

 代码:

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客time.sleep(1)                                           # 等待2sa = driver.find_element_by_id('Header1_HeaderTitle')    # 定位元素print(a.text)                                           # 获取元素文本driver.quit()                                           # 关闭浏览器进程

结果:


二:获取元素的属性值:get_attribute()

  例:获取href的属性值

代码:

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客time.sleep(1)                                           # 等待2sa = driver.find_element_by_id('Header1_HeaderTitle')    # 定位元素print(a.get_attribute('href'))                          # 获取元素的href属性值driver.quit()                                           # 关闭浏览器进程

结果:


三:判断页面元素是否可见:is_displayed()(注意:就算元素不可见,但是还是可以定位到的,只是这个元素不能操作)

  例:判断标红元素是否可见

代码:

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客time.sleep(1)                                           # 等待2sa = driver.find_element_by_id('footer')                 # 定位元素print(a.is_displayed())                                 # 判断页面元素是否可见driver.quit()                                           # 关闭浏览器进程

结果:可见返回true,不可见返回flase


四:判断页面元素是否可以操作:is_enabled()

  例:判断标红元素是否可以操作

代码:

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客time.sleep(1)                                           # 等待2sa = driver.find_element_by_id('footer')                 # 定位元素print(a.is_enabled())                                 # 判断页面元素是否可操作driver.quit()                                           # 关闭浏览器进程

结果:


五:在输入框输入指定的内容:send_keys()

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()driver.get('https://www.baidu.com/')driver.find_element_by_id('kw').send_keys('博客园')  # 在百度输入框中输入博客园driver.find_element_by_id('su').click()             # 点击百度一下time.sleep(1)driver.quit()

六:单击按钮:click()

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()driver.get('https://www.baidu.com/')driver.find_element_by_id('kw').send_keys('博客园')  # 在百度输入框中输入博客园driver.find_element_by_id('su').click()             # 点击百度一下time.sleep(1)driver.quit()

七:清空输入框的内容:clear()

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()driver.get('https://www.baidu.com/')driver.find_element_by_id('kw').send_keys('博客园')  # 在百度输入框中输入博客园time.sleep(1)driver.find_element_by_id('kw').clear()             # 清空输入框driver.quit()

八:获取元素的css属性值:value_of_css_property()

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()driver.get('https://www.baidu.com/')a = driver.find_element_by_id('kw')print(a.value_of_css_property('font')) # 获取a元素的css font值driver.quit()结果:
 

selenium webdriver API详解(三)的更多相关文章

  1. selenium webdriver API详解(二)

    本系列主要讲解webdriver常用的API使用方法(注意:使用前请确认环境是否安装成功,浏览器驱动是否与谷歌浏览器版本对应) 一:获取当前页面的title(一般获取title用于断言) from s ...

  2. selenium webdriver API详解(一)

    本系列主要讲解webdriver常用的API使用方法(注意:使用前请确认环境是否安装成功,浏览器驱动是否与谷歌浏览器版本对应) 一:打开某个网址:get() from selenium import ...

  3. Selenium常用API详解介绍

    转至元数据结尾   由 黄从建创建, 最后修改于一月 21, 2019 转至元数据起始   一.selenium元素定位 1.selenium定位方法 2.定位方法的用法 二.控制浏览器操作 1.控制 ...

  4. Webdriver之API详解(1)

    说明 Webdriver API详解,基于python3,unittest框架,driver版本和浏览器自行选择. 本内容需要对python3的unittest框架有一个简单的了解,这里不再赘述,不了 ...

  5. Webdriver之API详解(2)

    前言:今天继续上一篇文章https://www.cnblogs.com/linuxchao/p/linuxchao-selenium-apione.html分享selenium' webdriver ...

  6. Python爬虫之selenium库使用详解

    Python爬虫之selenium库使用详解 本章内容如下: 什么是Selenium selenium基本使用 声明浏览器对象 访问页面 查找元素 多个元素查找 元素交互操作 交互动作 执行JavaS ...

  7. Java 8 Stream API详解--转

    原文地址:http://blog.csdn.net/chszs/article/details/47038607 Java 8 Stream API详解 一.Stream API介绍 Java8引入了 ...

  8. jqGrid APi 详解

    jqGrid APi 详解 jqGrid皮肤 从3.5版本开始,jqGrid完全支持jquery UI的theme.我们可以从http://jqueryui.com/themeroller/下载我们所 ...

  9. 网络编程socket基本API详解(转)

    网络编程socket基本API详解   socket socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信. socket ...

随机推荐

  1. C++设计一个不能被继承的类

    1. 方法一 将构造函数和析构函数设置为私有函数,重新定义公有的静态函数来创建和释放类. #include "stdafx.h" #include <iostream> ...

  2. 树莓派 4G模块 PPP 拨号 NDIS 拨号

    资料参考:树莓派使用4G模块(华为ME909s-821)亲身尝试的可行方法(上)

  3. C# 4.0 不要跨程序集用dynamic指向匿名类型 (转载)

    今天写代码时偷懒用了dynamic,结果遇到问题,运行时始终无法获取dynamic对象的属性.原问题简化后如下: 程序集A包含SampleClass类,有一个静态方法,接收一个dynamic类型参数并 ...

  4. spring cloud gateway 之限流篇

    转载请标明出处: https://www.fangzhipeng.com 本文出自方志朋的博客 在高并发的系统中,往往需要在系统中做限流,一方面是为了防止大量的请求使服务器过载,导致服务不可用,另一方 ...

  5. 怎么用Python写爬虫抓取网页数据

    机器学习首先面临的一个问题就是准备数据,数据的来源大概有这么几种:公司积累数据,购买,交换,政府机构及企业公开的数据,通过爬虫从网上抓取.本篇介绍怎么写一个爬虫从网上抓取公开的数据. 很多语言都可以写 ...

  6. Ionic3项目实践记录

    Ionic3首次项目实践记录 标签(空格分隔): Angular Ionic Ionic3踩坑 1. 路由懒加载(lazy load) 如果设置了懒加载,就必须全部懒加载(包括TabsPage),否则 ...

  7. CentOS7进行OpenStack(queens)最小化部署实验出现的问题与解决过程

    注:此文为<OpenStack(queens)最小化搭建记录——控制与计算共两个节点>的补充 1.chrony时间同步服务搭建的时候,出现计算节点无法与控制节点同步.(controller ...

  8. ubuntu远程桌面

    用Linux已经有很长一段时间,但主要用于嵌入式开发(用交叉工具链进行版本编译),所以用命令行就可以了,而且敲的最多的命令就是make.最近开始搭建TensorFlow的开发环境,大部分工作都是命令行 ...

  9. jQuery实现列表的增加和删除

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 移动端H5页面解决软件键盘把页面顶起

    在input失去焦点的时候加上强制页面归位 window.scroll(0,0); 上代码 <input data-component="SearchInput" type= ...