基于Python的selenium实践

基于Python的selenium实践,第1张

基于Python的selenium实践·学习笔记1
  • 一、准备工作
    • 1.安装selenium第三方库
      • (1)selenium简介
    • 2.安装浏览器驱动
      • (1)Chrome浏览器驱动
      • (2)Edge浏览器驱动
    • 3.配置环境变量
  • 二、简单实例
    • 1.实例代码

一、准备工作 1.安装selenium第三方库 (1)selenium简介

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在 *** 作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。
——摘自百度百科词条

\quad 截至目前,Selenium已经更新到4.1.4版本,由于Selenium4和Selenium3的编程方式存在较大差异,比如:Selenium3中方法find_element_by_id()在Selenium4中将不再被推荐使用,而是用find_element(By.ID,"id")来代替,其中id为需要查找的元素的id(通常是唯一的),所以在查看示例代码时,需要注意对应的selenium版本。

2.安装浏览器驱动

\quad selenium的工作机理,简单而言,是selenium通过调用webdriver来执行对于浏览器的各种 *** 作,从而达到自动化的目的。
\quad 为了使selenium能够正常工作,我们需要下载对应的浏览器驱动,selenium支持许多种类的浏览器,下面将以Chrome浏览器和Edge浏览器为例,介绍浏览器驱动的安装流程。

(1)Chrome浏览器驱动
  • Chrome浏览器驱动下载链接 http://chromedriver.storage.googleapis.com/index.html
  • 点击上述链接,将进入如下界面

    \quad 我们能看到许多以Chrome浏览器版本号命名的文件夹。在下载之前,我们需要查看本机上Chrome浏览器的版本号,以确定最终需要下载的文件。比如,若浏览器的版本号为101.0.4951.54,然后查找以此为文件名的文件夹。有时并不能找到文件名完全对应的文件夹,此时只需保证前几位数字相同即可,还是以版本号101.0.4951.54为例,若找不到完全相符的文件夹,可以选择下载以下两个文件中的任意一个:

    \quad 文件夹内部的内容如下:

    \quad 此时便可以根据计算机 *** 作系统下载对应的驱动。
(2)Edge浏览器驱动
  • Edge浏览器驱动下载链接https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
  • 点击上述链接,将进入如下界面

    \quad 可以选择Stable Channel下载与本机 *** 作系统对应的安装包
3.配置环境变量

\quad 此步骤将结合“简单示例”部分进行讲解

二、简单实例 1.实例代码
# 以Chrome浏览器为例
from selenium import webdriver                         #导入selenium库中的webdriver类 
from selenium.webdriver.chrome.service import service  #导入sevice类,用于指定浏览器驱动的路径
# wd = webdriver.Chrome(service="Service(r'path')")
wd.get("http://www.baidu.com")

\quad 将上述代码中的path替换为之前下载的Chrome浏览器驱动所在的绝对路径,取消该行注释并运行。可以发现,Chrome浏览器被打开,同时访问了百度。但是每次填写驱动的路径显得十分麻烦,出于简化代码的考虑,我们可以通过环境变量的配置来省去每次填写路径的繁琐,步骤如下:

  1. 打开控制面板,进入高级系统设置
  2. 选择环境变量
  3. 选择系统变量中的Path,在末尾处添加之前安装的Chrome浏览器驱动的绝对路径,并注意以分号与系统变量Path中之前已经存在的路径相分隔

\quad 环境变量配置完成后,我们再运行以下代码,可以发现即使不指定路径仍然可以达到打开Chrome浏览器并访问百度的效果。

# 以Chrome浏览器为例
from selenium import webdriver                         #导入selenium库中的webdriver类 
from selenium.webdriver.chrome.service import service  #导入sevice类,用于指定浏览器驱动的路径
wd = webdriver.Chrome()
wd.get("http://www.baidu.com")

\quad 至此,我们完成了selenium的简单入门工作。
\quad 鉴于笔者水平有限,发现错漏之处,还请批评指正。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/883355.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-14
下一篇 2022-05-14

发表评论

登录后才能评论

评论列表(0条)

保存