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

selenium介绍

使用selenium中webdriver模块对浏览器进行操作fromseleniumimportwebdriver###导入模块bwebdriver.Ie()###打开ie浏览器b

使用selenium中webdriver模块对浏览器进行操作

from selenium import webdriver   ###导入模块

b = webdriver.Ie()                         ###打开ie浏览器

b.get('http://www.baidu.com')      ###打开一个网页

b.title,current_url                        ###使用title、url判断打开的网页是否正确

ele = b.find_element_by_id('根据id定位元素')

ele = b.find_element_by_name('根据name定位元素')

ele.send_keys('想要输入的内容')

ele.clear()    ###清除输入的内容

b.back()      ###退回上一步

###元素定位

ele1 = b.find_element_by_link_text('百度一下')  ###根据定位页面文字内容来点击按钮

ele1 = b.find_element_by_partial_link_text('百度一')  ###模糊定位页面文字内容来点击按钮

如果页面有很多相似的内容,元素又没有id或name等,可以用css定位,可以用Firebug查看元素,然后复制css路径给值

ele_css = b.find_element_by_css_selector('粘贴上一步复制的值')

如果没有找到可以使用css特有语法查找

ele = b.find_element_by_css_selector('input[id=\'search\']')    ###如果单引号内使用单引号,必须使用转意符

ele = b.find_element_by_css_selector('img[alt="对应的文字"]')

 

xpath定位

xml路径语言:用来确定xml文档中某部分位置语言,用于在xml文档中通过元素和属性进行导航

ele =  b.find_element_by_xpath('html/body/from/input')  ###查找第一个input

ele =  b.find_element_by_xpath('html/body/from/input[2]')  ###查找同级下的第二个input

ele.get_attribute('name')   ###获取属性

ele =  b.find_element_by_xpath('//from//input..')

ele =  b.find_element_by_xpath('//input[@id]')  ###第一个  选取所有xxx元素有id属性的元素 

ele =  b.find_element_by_xpath('//input[not(@id)]')   ####其他的

ele =  b.find_element_by_xpath('//input[@name="firstname"]')   ##选取所有xxx元素id属性为yyy的元素 

 

元素的操作方式

 

转:https://www.cnblogs.com/huangguabushihaogua/p/9526844.html



推荐阅读
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 本文介绍了一些好用的搜索引擎的替代品,包括网盘搜索工具、百度网盘搜索引擎等。同时还介绍了一些笑话大全、GIF笑话图片、动态图等资源的搜索引擎。此外,还推荐了一些迅雷快传搜索和360云盘资源搜索的网盘搜索引擎。 ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
  • 网址:https:vue.docschina.orgv2guideforms.html表单input绑定基础用法可以通过使用v-model指令,在 ... [详细]
  • node.jsurlsearchparamsAPI哎哎哎 ... [详细]
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社区 版权所有