Python版Selenium库简单介绍

使用场景

在我们操作电脑的时候,我们经常会在网页上进行一些重复性的工作,例如web测试,账号注册,资料获取。当我们不想做这些重复性的操作时,我们就可以写程序让电脑帮我们去处理这些事情。

Selenium库介绍

Selenium库是一个 Web 应用的自动化框架。Selenium库可以通过浏览器驱动对浏览器进行操作(点击按钮),然后浏览器也通过浏览器驱动把操作之后的数据(点击成功)返回给Selenium库。如下图:

这样的话就可以写Python程序调用Selenium库来模拟人操作浏览器的过程,从而实现自动化。

Selenium库使用

  1. 安装Selenium库,Selenium库有多个语言的版本。Python版的Selenium库安装

    pip install selenium
    
  2. 下载浏览器驱动,根据不同的浏览器下载不同浏览器驱动;此处使用的是Chrome浏览器。Chrome浏览器驱动下载地址

    • 查看电脑中安装的浏览器的版本,选择与之相近的驱动版本
    • 根据不同平台选择不同的驱动,window系统选择chromedriver_win32.zip。下载之后解压即可。
  3. 使用Selenium库的过程其实就是模拟人在使用浏览器的过程,比如我们在百度中搜索栏中输入某个关键词进行查询。那么使用Selenium库来完成这一操作的流程如下:

    1. 定位百度网页中的输入栏和百度一下按钮,定位的方法有很多种,这里我们使用最简单通过Id进行定位。

    我们可以在网页上得到百度输入框的id = "kw", 百度一下按钮id="su"。

    1. 在程序中把搜索操作分解成:

      1. 在输入框中输入关键词
      2. 点击百度一下按钮
      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()
      
      
  4. Selenium库使用的核心在在网页中定位筛选出需要的元素。学习参考链接

posted @ 2020-10-19 16:51  vijing  阅读(712)  评论(0编辑  收藏  举报