首页
学习
活动
专区
圈层
工具
发布
20 篇文章
1
船长带你看书——《selenium2 python 自动化测试实战》(1)
2
船长带你看书——《selenium2 python 自动化测试实战》(2)
3
《selenium2 python 自动化测试实战》(3)——操作测试对象
4
《selenium2 python 自动化测试实战》(4)——鼠标事件
5
《selenium2 python 自动化测试实战》(5)——键盘事件
6
《selenium2 python 自动化测试实战》(6)——打印信息和设置等待时间
7
《selenium2 python 自动化测试实战》(7)——定位一组对象
8
《selenium2 python 自动化测试实战》(8)——定位iframe
9
《selenium2 python 自动化测试实战》(9)——切换窗口
10
《selenium2 python 自动化测试实战》(10)——下拉框和alert
11
《selenium2 python 自动化测试实战》(11)——selenium安装版本
12
《selenium2 python 自动化测试实战》(12)——跳过验证码登录add_cookie
13
《selenium2 python 自动化测试实战》(13)——上传文件
14
《selenium2 python 自动化测试实战》(14)——下载文件
15
《selenium2 python 自动化测试实战》(16)——js操作补充
16
《selenium2 python 自动化测试实战》(17)——几个cookies操作
17
《selenium2 python 自动化测试实战》(18)——自动化测试模型(一)
18
《selenium2 python 自动化测试实战》(18)——webdriver错误截图
19
《selenium2 python 自动化测试实战》(19)——Selenium工具介绍
20
《selenium2 python 自动化测试实战》(20)——unittest单元测试框架解析

船长带你看书——《selenium2 python 自动化测试实战》(2)

浏览器操作

代码语言:javascript
代码运行次数:0
复制
# coding: utf-8

from selenium import webdriver
from time import sleep

driver = 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这个工具就可以了。

下一篇
举报
领券