写点什么

Selenium 简单基础详解(I)

  • 2022 年 9 月 21 日
    吉林
  • 本文字数:1555 字

    阅读完需:约 5 分钟

Selenium简单基础详解(I)

习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:想系统/深入学习某技术知识点…一个人摸索学习很难坚持,想组团高效学习…想写博客但无从下手,急需写作干货注入能量…热爱写作,愿意让自己成为更好的人…


一、什么是 Selenium

定义

Selenium是一个用于 Web 应用程序测试的工具。Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla FirefoxSafariGoogle ChromeOpera,Edge 等。这个工具的主要功能包括:测试与浏览器的兼容性——测试应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成.Net、JavaPerl等不同语言的测试脚本。

因此,Selenium 也被叫做“浏览器自动化测试框架”。(以上定义摘自百度百科)

功能

  • 框架底层使用 JavaScript 模拟真实用户对浏览器进行操作。测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从终端用户的角度测试应用程序。

  • 使浏览器兼容性测试自动化成为可能,尽管在不同的浏览器上依然有细微的差别。

  • 使用简单,可使用 Java,Python等多种语言编写用例脚本。

二、下载模块

1、pip 下载

windows 电脑使用 winR+cmd 的方式进入命令行终端,使用 pip 进行安装,具体命令为

pip install selenium

2、安装浏览器驱动 webDriver

Selenium 库中有个叫 webDriver 的 API。webDriver 即可以加载网站,也可以用来查找页面元素、与页面上的元素进行交互,以及执行其他动作。


三、基操(只演示谷歌浏览器)

一、打开 Chorme 浏览器:

from selenium import webdriver#导入模块browser = webdriver.Chorme()#浏览器的初始化browser.get('https://www.baidu.com/') #向百度发送请求print(browser.title)#输出页面标题browser.quit()#结束进程
复制代码

二、无界面模式

from selenium import webdriver# 1. 实例化配置对象chrome_options = webdriver.ChromeOptions()#2. 配置对象添加开启无界面命令chrome_options.add_argument('--headless')# 3. 配置对象添加禁用gpu命令chrome_options.add_argument('--disable-gpu')# 4. 实例化带有配置对象的browser 对象browser = webdriver.Chrome(chrome_options=chrome_options) browser.get('https://www.baidu.com/')# 查看请求的数据print(browser.page_source)  # 查看渲染后的数据,就可以Xpath进行解析获取数据了print(browser.get_cookies())  # 查看请求页面后的cookies值print(browser.current_url)  # 查看请求url # 关闭页面browser.close()# 关闭浏览器browser.quit()
复制代码

三、元素定位

通过 selenium 的基本使用可以简单操作浏览器,如此一来,学习定位元素的其他方法

from selenium import webdriverfrom selenium.webdriver.common.by import By chrome_options = webdriver.ChromeOptions()chrome_options.add_argument('--headless')browser = webdriver.Chrome(chrome_options=chrome_options)url = 'https://www.xxx.com/'browser.get(url)html_str = browser.page_source
复制代码

返回内容如下

<div class="panel">    <div class="panel-heading">        <h4>Hello</h4>    </div>    <div class="panel_body">        <ul class="list" id="list-1" name="element">            <li class="element">Foo</li>            <li class="element">Bar</li>            <li class="element">Jay</li>        </ul>        <ul class="list list-small" id="list-2">            <li class="element">Foo</li>                <a href="https://www.baidu.com">百度官网</a>            <li class="element">Bar</li>        </ul>    </div></div> 
复制代码


发布于: 刚刚阅读数: 3
用户头像

还未添加个人签名 2022.08.25 加入

还未添加个人简介

评论

发布
暂无评论
Selenium简单基础详解(I)_九月月更_吉师职业混子_InfoQ写作社区