首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Selenium2+python自动化35-获取元素属性

前言 通常在做断言之前,都要先获取界面上元素的属性,然后与期望结果对比。本篇介绍几种常见的获取元素属性方法。 一、获取页面title 1.有很多小伙伴都不知道title长在哪里,看下图左上角。...2.获取title方法很简单,直接driver.title就能获取到 二、获取元素的文本 1.如下图这种显示在页面上的文本信息,可以直接获取到 2.查看元素属性:把百度设为主页 3.通过...driver.text获取到文本 三、获取元素的标签 1.获取百度输入框的标签属性 四、获取元素的其它属性 1.获取其它属性方法:get_attribute("属性"),这里的参数可以是class、name...学习过程中有遇到疑问的,可以加selenium(python+java) QQ群交流:232607095 appium交流QQ群:512200893

1.1K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    面试题十四期-selenium+python面试题目总结

    【selenium+python面试题目总结】 diligence redeems stupidity 勤能补拙 ✎✎✎第一小节>> 1....Selenium可以被部署到windows.linux.mac平台上,支持的语言有java/python/ruby/.net/perl 特点: ·支持录制回放 ·多种方式对页面元素进行定位并操作...IDE: 是firefox的插件,可以录制/回放/测试脚本 2) Selenium RC:支持程序语言(java/C#/python/ruby)编写测试用例; selenium和其他测试框架集成,比如java...//属性定位 find_element_by_css_selector(‘span>input’) //标签名为span的input子元素 ?...16. page object设计模式 是将page对象封装成一个HTML页面,通过提供的应用程序特定的API来操作页面元素,而不是在html中来搜寻对象,即提供一个易于编程的接口并隐藏窗口中底层的部件

    2.6K20

    Python序列元素计数的方法,你知道几种?

    在Python脚本语言中,数据结构有许多种,常见的数据类型有:序列,映射与集合三大类型,其中序列又分为可变序列和不可变序列,可变序列有2类:列表(List)与字节数组(Byte Array)对象,不可变序列有...__doc__文档字符串可以看到其解释,它将可迭代对象的元素变成字典的键,值都赋值为统一的初始值,如下图: 贰 >>> 使用set方法对元素去重,直接使用字典解析获取各元素的次数,如下图: 叁 >>>...0,如果是list,那么默认值为空列表[],如果是集合,默认是空集合{}等等,然后按照字典的方式对其进行计数,下图是它的文档字符串: 肆 >>>使用collections模块的Counter类可以统计各元素的次数...这大概是最简单也是最便利的解决方式了,Counter类也是字典dict的子类,它接受一个可迭代的对象或者映射作为参数,生成的结果可以统计各元素的次数,当然它也可以获取前N最多计数次数,如下所示: 以上就是统计元素频数的几种方法...,如果你有更好的方法,可以在底下留言说明,如果你想获取更多与此相关的Python知识,请查阅Python官方文档。

    1.4K100

    python3 爬虫学习:自动给你心上人的微博点赞(二)

    selenium定位元素的八大方法: 在开始登录前,咱们得先学习一下selenium定位元素的方法,不然找不到元素是没办法完成自动操作 python工程狮 find_element_by_id() element是要素的意思,这个方法整句翻译过来的意思就是:通过id属性来查找元素...() 通过name属性来查找元素 test = driver.find_element_by_name('python') #找到name属性为‘python’的p标签 print(test.text...') #查找链接文本为‘百度’的元素 link = a['href'] #获取该元素的链接 find_element_by_partial_link_text() 通过链接的部分文本来查找元素...a = driver.find_element_by_link_text('度') #查找链接的部分文本为‘度’的元素 link = a['href'] #获取该元素的链接

    65520

    Selenium WebDriver API 学习笔记(一):元素定位

    读了虫师《Selenium 2自动化测试实战 基于Python语言》一书,感触颇深,内容非常丰富。现整理下来,供后续学习参考使用。本次主要整理的是元素定位的方式。...元素标签之前的文本信息来定位find_element_by_link_text(); 6....();其中css也有多种策略:①class属性:find_element_by_css_selector(".qwe");②id属性:find_element_by_css_selector("#qwe...>input.qwe");9.BY元素定位以上提到的8种定位方法,webdriver还提供了另一套写法,即统一调用find_element()方法,通过BY来声明定位的方法,并且传入对应定位方法的定位参数...使用BY之前需要插入BY类:from selenium.webdriver.common.by import Byfind_element(BY.ID,"qwe");find_element(BY.NAME

    64750

    python selenium 鼠标移动到指定元素,并点击对应的元素

    在使用selenium 爬去网页信息的时候,我们经常会遇到这样的一个问题。就是某一关键字或者元素,必须是鼠标悬浮上,才会出现,然后才能点击。那下面,我们就用python实现这一功能。...代码: import time from selenium.webdriver import ActionChains from selenium.webdriver.support import...,driver就是你的实例化对象,elenment 就是你对元素进行定位,这里我是通过driver.find_element_by_link_text(),当然你可以通过xpath()进行定位。...,并且可以点击element_to_be_clickable()的时候。...我这里设置最大的等待时间为5秒,如果5秒过后,元素不出现,就会报错,当然这里,你还可以加上一个 try except 进行异常捕获。

    5.4K30

    用python操作浏览器的三种方式

    从这篇博客开始,将学习使用如何使用python调用webdriver框架对浏览器进行一系列的操作 打开浏览器 在selenium+python自动化测试(一)–环境搭建中,运行了一个测试脚本...,返回的是list,可以通过索引来操作元素 例如页面上的复选框和单选框,或者页面上有多个属相相同的输入框,这些属性相同的一组元素,可以批量获取,然后过滤出需要操作的元素,选择其中的一个或者多个进行操作...通过百度首页搜索“selenium”关键字,会出现许多搜索结果,这些搜索结果具有相同的属性,不同的是属性的值不同,定位这些元素时,可以使用批量定位的方法 看下面的代码 ?...使用:find_element_by_css_selector("CSS") 实例: 7.1通过id属性定位元素 #号表示通过id属性来定位元素 find_element_by_css_selector...7.3通过标签名定位元素 find_element_by_css_selector("input") 7.4通过属性定位元素(挺常用的) find_element_by_css_selector

    8.4K51

    Selenium - Web Browser Automation, 没有你想象的那么难

    获取当前浏览器的url 来点小操作 上传图片 整合js处理不方便的操作 上传图片和上传文件 保存cookie和验证码操作 实战 关于flash上传文件或者图片的实现方案 autoit 简介 autoit...环境 这里使用的 python进行开发 python 3.6 webdriver selenium chrome or firefox 其中 webdriver 需要下载对应平台 selenium 可以使用...,这里可以使用 xpath, classname, css selector, id 等方式进行定位 定位得到账号输入框元素,先清空原来的内容,后通过 send_keys 输入账号, 同时输入密码,在输入密码时使用...find_element_by_css_selector 方法,这样就不用指定使用什么选择器了 单击操作 一般网页中会包含按钮、选项卡、菜单、链接等点击操作 对应的selenium提供了 在上一步中,...url 当我们单击登录时,如果登录成功会跳转到 https://github.com/而不是继续留在 https://github.com/login, 可以通过 current_url 来获取当前的url

    1.7K20

    10分钟教你如何自动化操控浏览器——Selenium测试工具

    作为一个 Web 应用程序自动化测试工具,Selenium 可以直接驱动浏览器,模拟真正的用户操作,解决回归测试和多浏览器兼容性测试问题;而且跟 Python 搭配,还能实现不少功能的自动化,切实提升了测试和业务效率...WebDriverWait # 等待页面加载某些元素 3.实例应用 1)打开浏览器,在检索框中输入Python并检索。...5、find_element_by_name 6、find_element_by_css_selector 7、find_element_by_tag_name ''' # 获取驱动对象...XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行查找。   ...那么如果你的网站需要发送ajax请求,异步获取数据渲染到页面上,是不是就需要使用js发送请求了。那浏览器的特点是什么?是不是可以直接访问目标站点,然后获取对方的数据,从而渲染到页面上。

    5.7K30

    一日一技:Selenium 如何获取鼠标指向的元素?

    有一个同学在Gne的群里面咨询如何通过Selenium获取当前鼠标指向的元素,在我讲了方法以后,他过了两天又来问: 那么,我今天就来写一篇文章,具体说说应该怎么操作。...这个方法的核心,是借助JavaScript的事件(event)来获取鼠标所在的元素。然后再把这个元素传递给Selenium。...我们先来第一步,不考虑Selenium,只使用JavaScript,如何获取当前鼠标指向的元素呢? 我们首先需要知道在JavaScript中的一个事件句柄,叫做window.onmousemove。...} window.onmousemove = track_mouse 然后我们再来看看Selenium中的Python代码: import time from selenium.webdriver...在Selenium里面,是通过while True每1秒查询一次window.hovered_element,虽然我们已经降低了频率,但大家从上面的图中可以看到,还是会获取到很多重复的数据。

    2K20

    爬虫篇 | 学习Selenium并使用Selenium模拟登录知乎

    爬虫篇 | Python使用正则来爬取豆瓣图书数据 爬虫篇 | 不会这几个库,都不敢说我会Python爬虫 爬虫篇 | Python现学现用xpath爬取豆瓣音乐 爬虫篇 | Python最重要与重用的库...Request 爬虫篇 | Python爬虫学前普及 基础篇 | Python基础部分 现在开始要学习使用Python进行动态爬虫了,而Selenium是来进行动态爬虫的一种工具 介绍Selenium...众所周知很多网站的内容需要登录后能去获取他们的内容,这个时候我们就需要先登录进去,所以就有了这篇模拟登录文章 模拟登录我们要使用到 selenium 自动化测试工具,这个工具需要另行安装,如果你是使用...webdriver.Firefox() 这是获取Firefox浏览器的驱动, 元素.click()这是模拟网页的某个控件的点击事件 元素.clear() 清除元素的值 元素.send_keys(username...) 给元素赋值 元素定位 再说一下元素的定位方法,元素的定位方法有很多种,下面我列举一下,这些方法看单词就能明白意思.

    1.6K51

    基于python 3 的selenium

    本文主要是运用selenium模块模拟登陆新浪微博 python webdriver环境搭建教程:http://blog.csdn.net/nanjunxiao/article/details/7957326...(Keys.RETURN) #实现自动点击登陆 print('登陆成功') 注:可以在cmd下通过命令安装selenium模块:pip install selenium 或者 easy_install...---- *附: selenium对web各元素的操作首先就要先定位元素,定位元素的方法主要有以下几种: *通过id定位元素:find_element_by_id(“id_vaule”) 通过...”) 通过class_name定位元素:find_element_by_class_name(“class_name”) 通过css定位元素:find_element_by_css_selector...();用css定位是比较灵活的 通过xpath定位元素:find_element_by_xpath(“xpath”) 通过link定位:find_element_by_link_text(“

    46320

    selenium的使用(有点意思)

    写在前面的话:在上一篇文章中,我们是通过分析Ajax请求,来获取我们想要的内容,那么对于动态网页的分析,我们还可以使用selenium来达到同样的效果,selenium可以模拟点击,下拉,鼠标,键盘等的操作...find_element_by_id()通过id名来获取。 find_element_by_name()通过属性名来获取。 find_element_by_xpath()通过xpath的方式获取。...find_element_by_tag_name()通过节点名来获取,比如input就是find_element_by_tag_name('input') find_element_by_css_selector...()通过css的方式获取,不如id为kw就是find_element_by_css_selector('#kw'), find_element_by_link_text()通过文本值来取,比如123...因为有时候页面还没有完全的加载不出,有些元素可能就获取不到导致异常。

    1.2K20

    Python爬虫:学习Selenium并使用Selenium模拟登录知乎

    现在开始要学习使用Python进行动态爬虫了,而Selenium是来进行动态爬虫的一种工具 介绍Selenium 众所周知很多网站的内容需要登录后能去获取他们的内容,这个时候我们就需要先登录进去,所以就有了这篇模拟登录文章...webdriver.Firefox() 这是获取Firefox浏览器的驱动, 元素.click()这是模拟网页的某个控件的点击事件 元素.clear() 清除元素的值 元素.send_keys(username...) 给元素赋值 元素定位 再说一下元素的定位方法,元素的定位方法有很多种,下面我列举一下,这些方法看单词就能明白意思....find_element_by_name find_element_by_xpath find_element_by_link_text find_element_by_partial_link_text 通过部分超连接文本定位..."XXX" #,获取浏览器的驱动,这里需要提前给firefox指定环境变量,如果没有指定则需要指定路径 driver = webdriver.Firefox() #窗口最大化 driver.maximize_window

    3.4K40

    通过元素的 getBoundingClientRect() 方法获取元素的实际宽高与实际展示的不符合

    我的代码:通过 css 设置样式,当 body 属性 v-direction=1 时,设置一个高度,默认会设置一个高度 .container { .video-container { height...] { .container { .video-container { height: calc(100% - 90px); } } } 现象:通过元素的...getBoundingClientRect() 获取的元素宽高与实际展示的不相符 原因:这里获取的是初始化给该元素设置的宽高,如果后续通过 css 媒体查询或者其他条件修改了元素的宽高,这里会有一个异步或时间顺序问题...,导致获取的与实际的不一致 解决:由于我这里的属性 v-direction 视频的方向是通过监听视频的相关事件获取之后,赋值到 body 上的,所以这里是一个异步函数,执行顺序一定在 getBoundingClientRect...v-direction 属性的逻辑之后,即可。

    64740
    领券