浏览器操作

# coding: utf-8from selenium import webdriver
from time import sleepdriver = webdriver.Firefox()
driver.get("https://www.baidu.com")# 设置浏览器宽800,高400
driver.set_window_size(800, 400)sleep(3)# 最大化窗口
driver.maximize_window()driver.get("https://www.cnblogs.com/")
sleep(3)# 后退到上一个页面
driver.back()sleep(3)# 前进到下一个页面
driver.forward()sleep(3)# 退出浏览器
driver.quit()

对象定位

webdriver 提供了一系列的元素定位方法,常用的有以下几种:

  • id

  • name

  • class name

  • tag name

  • link text

  • partial link text

  • xpath

  • css selector

分别对应 python webdriver 中的方法为:

  • find_element_by_id()

  • find_element_by_name()

  • find_element_by_class_name()

  • find_element_by_tag_name()

  • find_element_by_link_text()

  • find_element_by_partial_link_text()

  • find_element_by_xpath()

  • find_element_by_css_selector()

    我们还是以blog.hexun.com为例:

    这是他的登录框。摁F12或者鼠标右键选择Inspect in FirePath火狐浏览器会弹出查看元素界面:

    点一下上图箭头所示那里,然后去页面上点击你想定位的元素,比如我们现在要定位输入账号框,我们就点一下那个查看元素的图标,然后点一下输入账号的框,就可以看到查看元素的页面定位到了这里:

         在这里,页面元素属性有id、name等,这是我们定位这个框就可以通过id(find_element_by_id)或者name(find_element_by_name),一般来说name或者class_name,tag_name这些元素名称都不是唯一的,可能这里叫div(tag_name)另一个地方也叫div,这里叫name=”username”,另一个地方name也是username,这时候用name,class_name,tag_name就很难定位到你想要的元素,所以,不用犹豫了,不嫌长的话就用xPath或者css_selector吧,如果有id用id也可以,因为一般来说id肯定是唯一的。
         name如何定位xPath或者css_selector呢?那就是查看页面元素那里选择

    FirePath那个标签,上图已经看到账号栏的xPath了,只需要点击XPath后面那个小三角,就可以切换成css(就是css_selector)的定位方式了:

    所以呢,以后再定位的时候基本上不用思考,直接用FirePath这个工具就可以了。

  • 微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

转载于:https://www.cnblogs.com/captainmeng/p/7845695.html

船长带你看书——《selenium2 python 自动化测试实战》(2)浏览器操作相关推荐

  1. python自动化测试实战pdf无涯_【独家发布】Selenium2 Python自动化测试实战 第二版...

    Selenium2 Python自动化测试实战 第二版 第1 章自动化测试基础............................................................. ...

  2. selenium2 python自动化测试实战(回归测试)

    selenium2 python自动化测试实战 最近接手商城的项目,针对后台测试,功能比较简单,但是流程比较繁多,涉及到前后台的交叉测试.在对整个项目进行第一轮测试完成之后,考虑以后回归测试任务比较重 ...

  3. python自动化测试看什么书-《Python自动化测试实战》终于出版!!!

    一.为什么会写这本书 1.系统梳理.可以加深对测试知识体系的系统梳理 2.名气.增加个人的名气,比如:面试时,可以很自豪的说,我是xxxx书的作者 3.利他.帮助有需要的学习者更系统.完备的学习和进阶 ...

  4. 送书 |《Python自动化测试实战》

    有很多测试人员,尤其是测试新人都会有这样的疑虑:自动化测试要怎么去做?对于测试人员来说,不管进行功能测试还是自动化测试,还是性能测试,都是需要编写测试用例,所以我们必须先要了解清楚手工测试用例与自动化 ...

  5. 《selenium2 python 自动化测试实战》(15)——调用js控制滚动条等操作

    看代码: # coding=utf-8 from time import sleepfrom selenium import webdriver driver = webdriver.Firefox( ...

  6. python自动化测试实战 虫师_《Selenium2自动化测试实战--基于Python语言》 --即将面市...

    发展历程: <selenium_webdriver(python)第一版> 将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第二版 ...

  7. 阿里P8连肝一周整理出这份python自动化测试实战PDF

    由于细节内容实在太多啦,也为了不影响各位大大观看,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!总共整理了有282页的PDF文档,有需要的可以查看我文章最后. 整理了一份pyt ...

  8. python自动化测试实战-无涯(学习与研究)[一]

    python自动化测试实战-无涯(学习与研究)[一] 一. 使用Selenium,下载的浏览器驱动文件,到底应该放在那里? 单个元素定位实战 一. 使用Selenium,下载的浏览器驱动文件,到底应该 ...

  9. python自动化测试实战 虫师_关于《Selenium3自动化测试实战--基于python语言》

    2016年1月,机缘巧合下我出版了<Selenium2自动化测试实战--基于python语言>这本书,当时写书的原因是,大部分讲Selenium的书并不讲编程语言和单元测试框,如果想在项目 ...

最新文章

  1. PowerBuilder程序 ASA 数据库移植后不能连接解决
  2. Java将mysql输出csv,如何从Java中的Access数据库导出表并将其保存到.csv
  3. R语言使用fs包的file_copy函数、dir_copy函数、link_copy函数将文件、目录、超链接从一个位置拷贝(copy)到另一个位置
  4. tomcat-清除缓存
  5. 了解多线程中的yield
  6. 管理员修改文件的权限
  7. Inside Dynamics Axapta源代码赏析(五)
  8. 用DOS命令安装删除服务
  9. Python 的文件IO相关操作说明
  10. 二分法查找平方和_面试手撕系列:二分法
  11. Visual Studio Code 1.0正式发布
  12. MongoDB系列四(索引).
  13. 第一节:从面向对象思想(oo)开发、接口、抽象类以及二者比较
  14. mysql创建备份表脚本_MySQL 备份脚本(单库/分库分表)
  15. jetson刷机遇到cuda装不了
  16. win7+vs2008+windows mobile6.5.3
  17. 避免360浏览器极速模式自动填充表单
  18. 使用C#更新word中的目录域
  19. python 输出圆的面积公式_python计算圆的面积
  20. 范德堡计算机科学硕士,美国范德堡大学计算机科学专业怎么样?

热门文章

  1. nslookup命令dns请求超时_网络工程师之nslookup命令
  2. Java程序员的春天!springdocker部署
  3. Android性能优化最佳实践,终局之战
  4. 【深度学习入门到精通系列】Gamma变换(校正)
  5. python【蓝桥杯vip练习题库】ALGO-148 5-1最小公倍数(GCD)
  6. phpsql拼接_SQL存储过程中SQL语句拼接
  7. 如何有效建设网站外链?
  8. 如何在网站建设时正确设置符合SEO优化的元素?
  9. js遍历追加html子样式,前端基本功:JS(十一)动画封装(CSS样式获取、JSON遍历)...
  10. java手机音乐_JAVA类(手机充电、放音乐示例)