Selenium 环境配置

这篇具有很好参考价值的文章主要介绍了Selenium 环境配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

如果你做过 Web 测试的工作,那么你应该明白 Web 测试中最重要的一部分工作就是自动化测试。自动化测试,顾名思义就是让浏览器自动运行,而无需手动操作。这和我们爬虫工作原理有些相似,我们爬虫也需要让浏览器运行网址来获取我们需要的内容。所以我们今天来介绍一款自动化测试工具—— Selenium ,并将它运用到爬虫中来。

什么是 Selenium

我们首先来看看百度上搜索 selenium 的结果:

Selenium 环境配置

它的官网标题后面副标题是“Web Browser Automation”,什么意思?直译过来就是 Web 浏览器自动化,很直白很明显对不对?

我们再来看看官网的定义:

Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) be automated as well.

Selenium has the support of some of the largest browser vendors who have taken (or are taking) steps to make Selenium a native part of their browser. It is also the core technology in countless other browser automation tools, APIs and frameworks.

从这两段定义来看,大意就是 Selenium 的初衷是为 Web 应用自动化测试而生,但是它的用处不限于此,怎么使用完全取决于你。你可以用它来自动化处理一些基于 Web 的任务。各大浏览器厂商也将 Selenium 嵌入到它们的浏览器中了。Selenium 也广泛应用于其他的自动化工具、 API 和框架中。

Selenium 的环境搭建

安装 Selenium 工具包

跟其他 Python 工具包一样,有两种安装方式:一种是命令行安装:

pip install -U selenium

另一种是下载 Python 安装包文件,然后再手动安装。下载地址为 https://pypi.org/project/selenium/#files ,下载后解压压缩包,然后用命令行进入该压缩包的根目录,输入命令进行安装:

python setup.py install

个人还是比较推荐前一种安装方式,简单省心,一个命令就搞定。

安装浏览器驱动

对于 Selenium 3,要使用其功能,我们需要安装浏览器驱动。每个浏览器厂家都有自己的驱动,本文以 Chrome 浏览器为例,向大家介绍怎么安装浏览器驱动。

Chrome 的每个浏览器版本都会有对应版本的驱动, 所以我们第一步是要知道我们浏览器的版本。Chrome 浏览器的版本信息在“设置->关于 Chrome”里面可以找到,具体可以参照下图:

Selenium 环境配置

找到浏览器版本后,我们到 http://chromedriver.storage.googleapis.com/index.html 下载对应的 chromedriver 。以前的老版本都是2.x的版本,大家需要到网上搜一下版本对应关系。Chrome 从版本70之后就很好找了,所以建议大家将 Chrome 版本升级至最新的,驱动也好找些。

进入每个具体的 chromedriver 版本目录之后,我们可以看到下面这样的页面:

Selenium 环境配置

大家根据自己的操作系统,选择对应的文件下载即可。

下载完成后,解压压缩包,会得到 chromedriver 的驱动。不同的操作系统有不同的安装方式:

Windows 操作系统的安装关键步骤是:

① 把下载成功的驱动包chromedriver.exe解压出来,放在谷歌浏览器安装目录下的Application目录中(鼠标右键点击谷歌图标,选择属性,可在起始位置查看谷歌目录)。

② 然后配置系统环境变量在path中添加chromedriver.exe的路径。

③ 将chromedriver.exe放在C盘中windows文件夹下的SysWOW64,如果是32位系统则放在System32中。

④ 将chromedriver.exe放在D:\soft\python3\Scripts

笔者用的是 Mac 操作系统, Mac 系统安装驱动在网上搜索可以搜到两种方法:第一种是将 chromedriver 复制到 /usr/bin 目录下, 另一种是将 chromedriver 复制到 /usr/local/bin 目录下。

笔者采取的是第二种方案,因为第一种方案存在一个问题:Mac 对 /usr/bin 这个路径有权限的限制,即使你是 root 用户,也无法正常移动文件过去,这时,需关闭 Mac 的 SIP 方法 ,具体操作可参考:https://jingyan.baidu.com/article/e5c39bf5d13bf939d76033cf.html 。

至于网上说的将 chromedriver 驱动文件复制到 /usr/bin 或者 /usr/local/bin 后,需要在环境变量里面配置相应的目录,笔者试过不配置也没问题,当然配置了也不会出问题,所以为了省事,可以不用配置。

接下来,我们在命令行输入如下命令就可以查看我们的 chromedriver 版本了:

chromedriver --version

返回的版本号信息:

ChromeDriver 78.0.3904.11 (eaaae9de6b8999773fa33f92ce1e1bbe294437cf-refs/branch-heads/3904@{#86})

看到这个就表示 Chrome 驱动安装成功了。

现在我们来用最简单的语句测试一下,看能不能运行 Selenium:

from selenium import webdriverbrowser = webdriver.Chrome()browser.get('http://www.baidu.com/')

我们会看到弹出一个浏览器,闪了一下就消失了,同时在命令行有报错信息,报错信息的最后一行是:

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 78

大意就是目前的 chromedriver 版本只支持 78版本的 Chrome 浏览器,直白点就是浏览器驱动和浏览器的版本不匹配,这里我的浏览器是77版本,下载的驱动是78版本,所以导致报错。

下载77版本的驱动,替换掉 /usr/local/bin 目录下的驱动,然后重新运行上面的程序,我们会发现弹出来 Chrome 浏览器窗口,并打开了百度首页,这就代表我们的程序正常运行了,我们的环境配置成功了。

总结

本节给大家简单介绍了 Selenium , 以及对应的环境配置。其中环境配置是比较繁琐的,不同的操作系统不同的机器可能会出现各种各样的问题,这也是我们技术人员最头疼的地方,大家需要耐住性子慢慢来解决。环境配置好后,后面我们就可以用 Selenium 去做一些很 Cool 的事情了!文章来源地址https://www.toymoban.com/news/detail-514704.html

到了这里,关于Selenium 环境配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 测开 - 自动化测试 selenium - 自动化概念 && 测试环境配置 - 细节狂魔

    自动化测试指 软件测试的自动化 ,在 预设状态下 运行应用程序或者系统. 预设条件 包括正常和异常 ,最后评估运行结果。   自动化测试,就是 将人为驱动的测试行为转化为机器执行的过程。 【机器 代替 人工】 自动化测试 包括UI自动化,接口自动化,单元测试自动化。

    2024年02月02日
    浏览(105)
  • Python自动化测试 环境搭建 Selenium、WebDriver下载、安装、配置、基本使用详解

    基本于Python语言 和 Selenium框架,使用PyCharm 开发环境,详细介绍自动化测试环境的搭建 以及 基本的使用方法。 Python环境目前已被大部分主流操作系统所支持,比如在Linux、Mac、Unix等系统上就自带了Python环境,但在Windows系统上目前还需要自己安装,(当然如已经安装过了的话

    2024年02月03日
    浏览(72)
  • 如果还不会Elasticsearch这七个问题 那么你的Elasticsearch白学

    答:提高查询效率 答:elasticsearch-6.8.15binelasticsearch.bat 答:es图形化工具 更方便查询数据 答:elasticsearch-6.8.15headheadapache-tomcat-8.0.32binstartup.bat 答:1.没有配置跨域 2.没有开启elasticsearch 答:使用中文分词器 中文分词器就像一个词库 可以把一句话分成多个部分 只要词库里

    2023年04月08日
    浏览(43)
  • 如果用上以下几种.NET EF Core性能调优,那么查询的性能会飙升

    1、避免在循环中进行查询操作: 避免在循环中进行查询操作,可以将查询结果缓存到内存中,然后对内存中的数据进行操作,可以提高性能。这种方式适合集合数据量少的数据,否则利大于弊。   2、避免使用懒加载: 避免使用懒加载,因为每次访问导航属性都会触发额外

    2024年02月02日
    浏览(37)
  • 数据结构—顺序表(如果想知道顺序表的全部基础知识点,那么只看这一篇就足够了!)

            前言:学习完了C语言的基础知识点之后,我们就需要使用我们所学的知识来进一步对存储在内存中的数据进行操作,这时候我们就需要学习数据结构。而这篇文章为数据结构中顺序表的讲解。 ✨✨✨ 这里是秋刀鱼不做梦的BLOG ✨✨✨ 想要了解更多内容可以访问我的

    2024年04月13日
    浏览(49)
  • 软件测试面试真题 | Selenium 的工作原理是什么?

    Selenium 通常被我们用做测试web的自动化测试工具,其实 Selenium 不仅仅是个API,它是一组工具集合,它是由三大组件组成 WebDriver: 可以模拟真正的用户去操作浏览器页面,主要是通过控制浏览器厂商提供的 driver 来控制浏览器 Selenium IDE: 是安装在浏览器上一个扩展工具,可以将

    2024年01月16日
    浏览(52)
  • ros中常见问题处理:延迟问题解决方法、订阅的数据感觉比发布的数据要多;如果没有正在接收消息,那么状态如何获取?

    在ROS中,消息的发布和订阅是异步的,也就是说,当你调用pub.publish(output_msg)发布消息时,该函数会立即返回,并不会等待所有订阅者接收消息。因此,如果你的程序出现延迟,可能是由于某些原因导致消息被堵塞或丢失。 以下是几种可能导致延迟的原因和解决方法: 1,消

    2024年02月06日
    浏览(40)
  • CSS基础之伪类选择器(如果想知道CSS的伪类选择器知识点,那么只看这一篇就足够了!)

            前言:学习CSS就必须要学习选择器,在之前我们已经学习了基本选择器和复合选择器,但是还有几个选择器没有学习,这篇文章主要讲解伪类选择器。 ✨✨ ✨ 这里是秋刀鱼不做梦的BLOG ✨✨✨ 想要了解更多内容可以访问我的主页 秋刀鱼不做梦-CSDN博客 那么废话不多

    2024年04月17日
    浏览(50)
  • 数十位高级测工联合讲解Selenium自动化测试框架工作原理

    一、Selenium是什么? 用官网的一句话来讲:Selenium automates browsers. That\\\'s it!简单来讲,Selenium是一个用于Web应用程序自动化测试工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作浏览器一样。支持的浏览器包括IE,Firefox,Safari,Chrome等。Selenium 不仅仅是一个工具或

    2024年02月05日
    浏览(38)
  • python+selenium自动化测试环境搭建步骤(selenium环境搭建)

     📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📢交流讨论:欢迎加入我们一起学习! 📢资源分享:耗时200+小时精选的「软件测试」资料包 📢 软件测试学习教程推荐:火遍全网的《软件测试》教程 ​ 1.自动化测试概念:       是

    2024年01月22日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包