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

一:获取当前页面的title(一般获取title用于断言)

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客园time.sleep(2)                               # 等待2sa = driver.title                       # 获取当前页面的titleprint(a)                               # 打印titledriver.quit()                          # 关闭浏览器进程

结果:


二:获取当前页面的URL(一般获取URL用于断言)

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客园time.sleep(2)                               # 等待2sa = driver.current_url                 # 获取当前页面的urlprint(a)                               # 打印urldriver.quit()                          # 关闭浏览器进程

结果:


三:获取当前页面的html源码

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客园time.sleep(2)                               # 等待2sa = driver.page_source                # 获取当前页面的html源码print(a)                               # 打印html源码driver.quit()                          # 关闭浏览器进程

结果:


四:获取浏览器所有窗口的句柄(获取所有句柄后可以切换窗口)

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客园time.sleep(1)                               # 等待2sa = driver.window_handles               # 获取所有窗口的句柄print(a)                               # 打印所有的句柄driver.quit()                          # 关闭浏览器进程

结果:注意:因为我只打开了一个窗口,所以只有一个句柄


五:获取浏览器当前窗口的句柄

from selenium import webdriver   # 导入webdriverimport timedriver = webdriver.Chrome()      # 实例化driver.get('https://www.cnblogs.com/kevin-liutianping/')   # 打开我的博客园time.sleep(1)                               # 等待2sa = driver.current_window_handle       # 获取当前窗口的句柄print(a)                               # 打印句柄driver.quit()                          # 关闭浏览器进程

结果:


六:切换窗口(切换句柄,推荐用新方法)

  1. driver.switch_to.window('句柄')      #  新方法,切换窗口

  2.driver.switch_to_window('句柄')       # 过时的方法,切换窗口

七:获取元素的大小(感觉没吊用)

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('blog_nav_sitehome')    # 定位元素print(a.size)                          # 获取元素的大小driver.quit()                          # 关闭浏览器进程

结果:

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

  1. selenium webdriver API详解(三)

    本系列主要讲解webdriver常用的API使用方法(注意:使用前请确认环境是否安装成功,浏览器驱动是否与谷歌浏览器版本对应) 一:获取页面元素的文本内容:text 例:获取我的博客名字文本内容 代码 ...

  2. selenium webdriver API详解(一)

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

  3. Selenium常用API详解介绍

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

  4. V4L2 API详解 <二> Camera详细设置【转】

    转自:http://blog.sina.com.cn/s/blog_602f87700101bf36.html 作者: Sam (甄峰)  sam_code@hotmail.com   Camera的 ...

  5. Webdriver之API详解(1)

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

  6. Webdriver之API详解(2)

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

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

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

  8. Java 8 Stream API详解--转

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

  9. DOM API详解

    来源于:http://zxc0328.github.io/2016/01/23/learning-dom-part1/ https://zxc0328.github.io/2016/01/26/lea ...

随机推荐

  1. [转]TortoiseSVN客户端的安装

    TortoiseSVN是windows平台下Subversion的免费开源客户端. 一般我们都是先讲讲服务器的配置,然后再讲客户端的使用,但是在TortoiseSVN上,却可以反过来.因为,如果你的要 ...

  2. Redis的安装和部署(windows )

    Redis是一个开源的试用ANSI C语言编写的.遵守BSD协议.支持网络.可基于内存可持久化的日志型.key-value数据库.通常被称为数据结构服务器. redis的数据类型有:字符串(strin ...

  3. 【题解】洛谷P1080 [NOIP2012TG] 国王游戏(贪心+高精度)

    次元传送门::洛谷P1080 思路 我们模拟一下只有两个大臣的时候发现 当a1​∗b1​<a2​∗b2​是ans1<ans2 所以我们对所有大臣关于左右手之积进行排序 得到最多钱的大臣就是 ...

  4. 【Javascript-基础-Date】本地时间与UTC(GMT)时间转换

    UTC(GMT) 整个地球分为二十四时区,每个时区都有自己的本地时间.在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinat ...

  5. ios开发遇到的问题

    运行后界面空白,Xcode跳转到APPDelegate.swift文件提示如下 第一种可能原因: 做输出口后在代码中重新命名了输出口 解决方法: 右键控件关闭输出口的连接,变回+号,将它重新连到代码的 ...

  6. 数据结构08——Trie

    一.什么是Trie? Trie树,一般被称为字典树.前缀树等等,Trie是一种多叉树,这个和二分搜索树.堆.线段树这些数据结构不一样,因为这些都是二叉树.,Trie树除了是一种多叉树,它是一种哈希树的 ...

  7. Redis全方位详解--磁盘持久化和容灾备份

    序言 在上一篇博客中,博客介绍了redis的数据类型使用场景和redis分布式锁的正确姿势.我们知道一旦Redis重启,存在redis里面的数据就会全部丢失.所以这篇博客中向大家介绍Redis的磁盘持 ...

  8. laravel5.5源码阅读草稿——application

    构建方法传入整个项目根目录路径(public文件夹上一级)将其设为基础路径(存在本类basePath属性中). __construct > setBasePath > bindPathsI ...

  9. 【二】调通单机版的thrift-C++版本

    [任务2]调通单机版的thrift-C++版本 [任务2]调通单机版的thrift-C++版本 创建文件 安装boost开发工具 拷贝文件 [可忽略此步骤,如果c++代码直接编译无误的话] 编译 创建 ...

  10. Python-条件语句和循环语句

    ·条件语句 笔记: If  布尔值: print(‘hello,world!’) 当表达式为布尔表达式时,Flase   None  0   ””    ()    []    {} 都视为假! @ ...