通过WebElement接口获取值

  size  获取元素的尺寸

  text  获取元素的文本

  get_attribute(name)  获取属性值

  location  获取元素坐标,先找到要获取的元素,再调用该方法

  page_source  返回页面源码

  driver.title  返回页面标题

  current_url  获取当前页面的URL

  is_displayde()  判断该元素是否可见

  is_enabled()  判断元素是否被使用

  is_selected()  判断元素是否被选中

  tag_name  返回元素的tagName

例子:百度首页的 新闻按钮 

#! /usr/bin/env python
#coding=utf-8 from selenium import webdriver
import time url = "https://www.baidu.com/"
driver = webdriver.Firefox()
driver.get(url)
time.sleep(3) #size获取元素的尺寸
size = driver.find_element_by_id("kw").size
print("搜索框的尺寸:",size)
#搜索框的尺寸: {'height': 22, 'width': 500}
time.sleep(3) #text获取元素的文本
news = driver.find_element_by_name("tj_trnews").text
print("新闻按钮的文本:",news)
#新闻按钮的文本: 新闻
time.sleep(3) #get_attribute(name)获取属性值
href = driver.find_element_by_xpath(".//*[@id='u1']/a[1]").get_attribute("href")
name = driver.find_element_by_xpath(".//*[@id='u1']/a[1]").get_attribute("name")
print("新闻按钮的链接值:",href)
#新闻按钮的链接值: http://news.baidu.com/
print("新闻按钮的名字值:",name)
#新闻按钮的名字值: tj_trnews
time.sleep(3) #location获取元素坐标,先找到要获取的元素,再调用该方法
location = driver.find_element_by_xpath(".//*[@id='u1']/a[1]").location
print("新闻按钮的坐标值:",location)
#新闻按钮的坐标值: {'x': 574, 'y': 19} print("当前页面的URL:",driver.current_url)
#当前页面的URL: https://www.baidu.com/ print("当前页面的标题:",driver.title)
#当前页面的标题: 百度一下,你就知道 result1 = driver.find_element_by_xpath(".//*[@id='u1']/a[1]").is_displayed()
result2 = driver.find_element_by_name("tj_trnews").is_displayed()
print("新闻按钮是否可见1:",result1)
print("新闻按钮是否可见2:",result2)
#新闻按钮是否可见1: True
#新闻按钮是否可见2: True driver.quit()

  结果:

新闻按钮的名字值: tj_trnews
新闻按钮的坐标值: {'x': 574, 'y': 19}
当前页面的URL: https://www.baidu.com/
当前页面的标题: 百度一下,你就知道
新闻按钮是否可见1: True
新闻按钮是否可见2: True

 

WebElement接口获取值的更多相关文章

  1. Go-json解码到接口及根据键获取值

    Go-json解码到接口及根据键获取值 package main import ( "encoding/json" "fmt" "github.com ...

  2. 通过zabbix的API接口获取服务器列表

    Zabbix API说明 1) 基于Web的API,作为Web前端的一部分提供,使用JSON-RPC 2.0协议 2) 身份认证Token:在访问Zabbix中的任何数据之前,需要登录并获取身份验证令 ...

  3. java接口对接——别人调用我们接口获取数据

    java接口对接——别人调用我们接口获取数据,我们需要在我们系统中开发几个接口,给对方接口规范文档,包括访问我们的接口地址,以及入参名称和格式,还有我们的返回的状态的情况, 接口代码: package ...

  4. 从api接口获取数据-okhttp

    首先先介绍下api接口: API:应用程序接口(API:Application Program Interface) 通常用于数据连接,调用函数提供功能等等... 从api接口获取数据有四种方式:Ht ...

  5. JAVA枚举操作(获取值,转map集合)

    JAVA枚举相对来说比.NET的枚举功能强大,感觉就像是一种简化版的类对象,可以有构造方法,可以重载,可以继承接口等等,但不能继承类,JAVA枚举在实际开发中应用相当频繁,以下几个封装方法在实际开发中 ...

  6. Struts2_day03--课程安排_OGNL概述入门_什么是值栈_获取值栈对象_值栈内部结构

    Struts2_day03 上节内容 今天内容 OGNL概述 OGNL入门案例 什么是值栈 获取值栈对象 值栈内部结构 向值栈放数据 向值栈放对象 向值栈放list集合 从值栈获取数据 获取字符串 获 ...

  7. 接口返回值结果转换成JSON

    接口返回值结果转换成JSON,具体的方法如下: public static String GetJsonValue(String result,int index,String key){ int i ...

  8. flutter 从接口获取json数据显示到页面

    如题,在前端,是个很简单的ajax请求,json的显示,取值都很方便,换用dart之后,除了层层嵌套写的有点略难受之外,还有对json的使用比js要麻烦 1. 可以参照 flutter-go 先封装一 ...

  9. Vue学习笔记十三:Vue+Bootstrap+vue-resource从接口获取数据库数据

    目录 前言 SpringBoot提供后端接口 Entity类 JPA操作接口 配置文件 数据库表自动映射,添加数据 写提供数据的接口 跨域问题 前端修改 效果图 待续 前言 Vue学习笔记九的列表案例 ...

随机推荐

  1. nginx大量TIME_WAIT的解决办法 netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

    vi /etc/sysctl.conf net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse=1 #让TIME_WAIT状态可以重用,这样即使TIME_W ...

  2. MySQL视图概述

    1.介绍 在传统关系型数据库里,视图有时也被称作虚表,是基于特定SQL结果集的虚拟数据表.在有些场合会变得很方便,例如:原有系统重构,旧的数据表A和B已经被拆分和合并到数据表C.D.F里面,为了实现平 ...

  3. php 获取文件加的名称

    /*** * 根本平台类型获取文件名 */ function showGetFileName($type,$url){ #判断平台类型 if($type=='android'||$type=='ios ...

  4. 用代码构造PreferenceScreen

    在PreferenceFregment中构造界面,简单省事的方法就是使用findPreference然后在xml里把UI写好.在代码中动态的添加UI内容也是需要的.核心代码是: PreferenceS ...

  5. mysql 考勤表异常 【待修改】

    有考勤刷卡记录表,表名为attendance ,有如下字段: 姓名 卡号 刷卡时间 刷卡类型 name id time type    张三 59775623 2010-04-01 07:23:37  ...

  6. <C#入门经典>学习笔记1之初识C#

    序言 选择< C#入门经典第五版>作为自学书籍,以此记录学习过程中的笔记与心得. C#简单介绍 1. C#是一种块结构的语言 2. C#区分大写和小写 C#变量 C#的变量定义与C语言相似 ...

  7. angualejs

    http://segmentfault.com/a/1190000000347412 http://www.xker.com/page/e2015/06/199141.html http://www. ...

  8. Android 热门技术干货

    http://mp.weixin.qq.com/s?__biz=MzIwMzYwMTk1NA==&mid=2247484939&idx=1&sn=d1871b09de55ca6 ...

  9. Java获取字符串的CRC8校验码(由C程序的代码修改为了Java代码)

    CRC8算法请百度,我也不懂,这里只是把自己运行成功的结构贴出来了.方法CRC8_Tab这里没有处理,因为我的程序中没有用到. package com.crc; public class CCRC8_ ...

  10. [08山东省选]2298 石子合并 即POJ 1738 An old Stone Game

    2298 石子合并 2008年省队选拔赛山东  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Description 在 ...