热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

selenium2.0中常用的python函数汇总

这篇文章主要介绍了selenium2.0中常用的python函数,总结分析了selenium2.0中常用的python函数的功能、原理与基本用法,需要的朋友可以参考下

本文总结分析了selenium2.0中常用的python函数。分享给大家供大家参考,具体如下:

新建实例driver = webdriver.Firefox()

此处定位均使用的百度首页输入框

1.通过标签属性Id查找元素
方法:find_element_by_id(element_id)
实例:driver.find_element_by_id("kw")

2.通过标签属性name查找元素
方法:find_element_by_name(element_name)
实例:driver.find_element_by_name("wd")

3.通过标签Xpath路径查找元素
方法:find_element_by_xpath(xpath)
实例:driver.find_element_by_xpath("//*[@id="kw"]")

4.通过标签名tagname查找元素
方法:find_element_by_tag_name(tag_name)
实例:driver.find_element_by_tag_name("input")
注意:通过tag_name查找时使用find_element_by_tag_name查找到的是第一个标签的tag_name

5.通过标签中的元素文本链接查找元素
方法:find_element_by_link_text(link_text)
实例:driver.find_element_by_link_text('百度一下')

6.通过标签的class属性查找元素
方法:find_elements_by_class_name(class_name)
实例:driver.find_elements_by_class_name("s_ipt")

7.通过css样式查找元素
方法:find_element_by_css_selector()
实例:driver.find_element_by_css_selector("#kw")

8.浏览器中加载url
方法:get(url)
实例:driver.get("http://www.baidu.com")

9.向前
方法:forward()
实例:driver.forward()

10.返回当前会话中的COOKIEs
方法:get_COOKIEs()
实例:driver.get_COOKIEs()

11.根据COOKIE name 查找
方法:driver.get_COOKIE(COOKIE_name)
实例:driver.get_COOKIE("NET_SessionId")

12.截取当前页面
方法:
get_screenshot_as_file(filename)
实例:driver.get_screenshot_as_file(r"C:\Users\Eric\Desktop\test.png")

13.获取当前窗口的坐标
方法:get_window_position()
实例:driver.get_window_position()

14.获取当前窗口的长和宽
方法:get_window_size()
实例:driver.get_window_size()

15.获取当前页面的Url函数
方法:current_url
实例:driver.current_url

16.获取元素坐标
方法:location
解释:首先查找到你要获取元素的,然后调用location方法
实例:driver.find_element_by_id("kw").location

17.表单的提交
方法:submit
解释:查找到表单(from)直接调用submit即可
实例:driver.find_element_by_id("su").submit()

18.获取CSS的属性值
方法:value_of_css_property(css_name)
实例:driver.find_element_by_id("su").value_of_css_property("color")

19.获取元素的属性值
方法:get_attribute(element_name)
实例:driver.find_element_by_id("kw").get_attribute("type")

20.判断元素是否被选中
方法:is_selected()
实例:driver.find_element_by_id("form1").is_selected()

21.返回元素的大小
方法:size
实例:driver.find_element_by_id("kw").size
返回值:{'width': 102, 'height': 38}

22.判断元素是否显示
方法:is_displayed()
实例:driver.find_element_by_id("kw").is_displayed()

23.判断元素是否被使用
方法:is_enabled()
实例:driver.find_element_by_id("kw").is_enabled()

24.获取元素的文本值
方法:text
实例:driver.find_element_by_class_name("mnav").text

25.输入值
方法:send_keys(*values)
实例:driver.find_element_by_id("kw").send_keys('admin')
注意如果是中文需要加u
driver.find_element_by_id("kw").send_keys(u'青春')

26.返回元素的tagName
方法:tag_name
实例:driver.find_element_by_id("kw").tag_name

27.删除浏览器所以的COOKIEs
方法:delete_all_COOKIEs()
实例:driver.delete_all_COOKIEs()

28.删除指定的COOKIE
方法:delete_COOKIE(name)
实例:deriver.delete_COOKIE("my_COOKIE_name")

29.关闭浏览器
方法:close()
实例:driver.close()

30.关闭浏览器并且推出驱动程序
方法:quit()
实例:driver.quit()

31.返回上一页
方法:back()
实例:driver.back()

32.设置等待超时
方法:implicitly_wait(wait_time)
实例:driver.implicitly_wait(30)

33.浏览器窗口最大化
方法:maximize_window()
实例:driver.maximize_window()

34.查看浏览器的名字
方法:name
实例:drvier.name

35.刷新当前浏览器
方法:refresh
实例:drvier.refresh()

36.获取浏览器的版本号
方法:capablities['version']
实例:drvier.capablities['version']   #打印浏览器的version的值

37.获取在浏览器中新开一个TAB
方法:触发ctrl+c
实例:drvier.find_element_by_tag_name('body').send_keys(Keys.CONTROL + 't')  #触发Ctrl+c

备注:需要引入keys模块相关方法  即:from selenium.webdriver.common.keys import Keys

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。


推荐阅读
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 提升Python编程效率的十点建议
    本文介绍了提升Python编程效率的十点建议,包括不使用分号、选择合适的代码编辑器、遵循Python代码规范等。这些建议可以帮助开发者节省时间,提高编程效率。同时,还提供了相关参考链接供读者深入学习。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • 本文整理了常用的CSS属性及用法,包括背景属性、边框属性、尺寸属性、可伸缩框属性、字体属性和文本属性等,方便开发者查阅和使用。 ... [详细]
  • Window10+anaconda+python3.5.4+ tensorflow1.5+ keras(GPU版本)安装教程 ... [详细]
  • CSS|网格-行-结束属性原文:https://www.gee ... [详细]
  • css元素可拖动,如何使用CSS禁止元素拖拽?
    一、用户行为三剑客以下3个CSS属性:user-select属性可以设置是否允许用户选择页面中的图文内容;user-modify属性可以设置是否允许输入 ... [详细]
  • 使用python输入PDF编号自动下载freepatentsonline.com的文档#!usrbinenvpython3#codingutf-8#Version:python3. ... [详细]
  • 当我在doWork方法中运行代码时,通过单击button1,进度条按预期工作.但是,当我从其他方法(即btn2,btn3)将列表传递给doWork方法时,进度条在启动后会跳转到10 ... [详细]
  • css,背景,位置,y,background, ... [详细]
  • python之poc编写——sql篇
    文章目录sql注入漏洞漏扫单个网站基础sql扫描多个网站sql基础扫描时间盲注型扫描升阶版sq ... [详细]
author-avatar
妈妈说称号长的人很牛也
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有