seleniumWebdriver

安装Selenium库

pip install selenium

测试,新建一个 .py文件输入如下内容

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
print(driver.title)
driver.quit()

执行完之后,会打印出 “百度一下,你就知道”

下载浏览器驱动

chrome https://sites.google.com/a/chromium.org/chromedriver/home

firefox https://github.com/mozilla/geckodriver/releases

其它的自行搜索

设置浏览器驱动

frome selenium import webdriver
driver = webdriver.Firefox()   # Firefox浏览器
driver = webdriver.Chrome()    # Chrome浏览器
driver = webdriver.Ie()        # Internet Explorer浏览器
driver = webdriver.Edge()      # Edge浏览器
driver = webdriver.Opera()     # Opera浏览器
driver = webdriver.PhantomJS()   # PhantomJS

元素定位

selenium提供了8种定位方式

这8种定位方式对应的方法为:

定位方法的用法

假如有一个web页面,通过前端工具获取到元素属性如下

目标:定位input标签的输入框

通过id定位:

通过name定位:

通过class name定位:

通过tag定位:

通过xpath定位,xpath定位写法很多,这里列出几种常用的做参考:

通过css定位,css定位写法同样有很多, 也列出几种做参考:

接下来,我们的页面上有一组文本链接。

通过link text完整内容定位:

通过link text部分内容定位:

控制浏览器操作

控制浏览器窗口大小

有时候我们希望能以某种浏览器尺寸打开,让访问的页面在这种尺寸下运行。例如可以将浏览器设置成移动端大小(480* 800),然后访问移动站点,对其样式进行评估;WebDriver提供了set_window_size()方法来设置浏览器的大小。

控制浏览器后退、前进

在使用浏览器浏览网页时,浏览器提供了后退和前进按钮,可以方便地在浏览过的网页之间切换,WebDriver也提供了对应的back()和forward()方法来模拟后退和前进按钮。下面通过例子来演示这两个方法的使用。

刷新页面

有时需要手动刷新页面

点击和输入

前面我们已经学习了定位元素, 定位只是第一步, 定位之后需要对这个元素进行操作, 或单击(按钮) 或输入(输入框) , 下面就来认识 WebDriver 中最常用的几个方法:

clear(): 清除文本。 send_keys (value): 模拟按键输入。 click(): 单击元素。

提交

submit() 该方法用于提交表单,例如在搜索框输入关键字后回车的操作就可以使用该方法模拟

其它常用方法

size: 返回元素的尺寸。 text: 获取元素的文本。 get_attribute(name): 获得属性值。 is_displayed(): 设置该元素是否用户可见。

最后更新于