Python版Selenium库简单介绍
使用场景
在我们操作电脑的时候,我们经常会在网页上进行一些重复性的工作,例如web测试,账号注册,资料获取。当我们不想做这些重复性的操作时,我们就可以写程序让电脑帮我们去处理这些事情。
Selenium库介绍
Selenium库是一个 Web 应用的自动化框架。Selenium库可以通过浏览器驱动对浏览器进行操作(点击按钮),然后浏览器也通过浏览器驱动把操作之后的数据(点击成功)返回给Selenium库。如下图:
这样的话就可以写Python程序调用Selenium库来模拟人操作浏览器的过程,从而实现自动化。
Selenium库使用
-
安装Selenium库,Selenium库有多个语言的版本。Python版的Selenium库安装
pip install selenium
-
下载浏览器驱动,根据不同的浏览器下载不同浏览器驱动;此处使用的是Chrome浏览器。Chrome浏览器驱动下载地址。
- 查看电脑中安装的浏览器的版本,选择与之相近的驱动版本
- 根据不同平台选择不同的驱动,window系统选择chromedriver_win32.zip。下载之后解压即可。
-
使用Selenium库的过程其实就是模拟人在使用浏览器的过程,比如我们在百度中搜索栏中输入某个关键词进行查询。那么使用Selenium库来完成这一操作的流程如下:
-
定位百度网页中的输入栏和百度一下按钮,定位的方法有很多种,这里我们使用最简单通过Id进行定位。
我们可以在网页上得到百度输入框的id = "kw", 百度一下按钮id="su"。
-
在程序中把搜索操作分解成:
- 在输入框中输入关键词
- 点击百度一下按钮
from selenium import webdriver # 创建 WebDriver 对象,指明使用chrome浏览器驱动 wd = webdriver.Chrome(r'd:\webdrivers\chromedriver.exe') # 调用WebDriver 对象的get方法 可以让浏览器打开指定网址 wd.get('https://www.baidu.com') # 根据id选择元素,返回的就是该元素对应的WebElement对象 element = wd.find_element_by_id('kw') # 通过该 WebElement对象,就可以对页面元素进行操作了 # 比如输入字符串到百度输入框中 element.send_keys('关键词') # 点击百度一下按钮 element = wd.find_element_by_id('su') element.click() # 退出 # wd.quit()
-
-
Selenium库使用的核心在在网页中定位筛选出需要的元素。学习参考链接