Python selenium基础用法详解

在这里插入图片描述​ 

活动地址:CSDN21天学习挑战赛

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。

学习日记

目录


一、Selenium库介绍
 

1、Selenium简介

        Selenium 是一套完整的web应用程序测试系统,包含了测试的录制(Selenium IDE),编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。Selenium 支持的语言包括C#,Java,Perl,PHP,Python 和 Ruby。目前,Selenium Web 驱动程序最受 Python 和 C#欢迎。 Selenium 测试脚本可以使用任何支持的编程语言进行编码,并且可以直接在大多数现代 Web 浏览器中运行。

Python selenium基础用法详解

2、Selenium的安装

打开 cmd,输入下面命令进行安装。

pip install selenium

执行后,使用 pip show selenium 查看是否安装成功。

3、安装浏览器驱动

针对不同的浏览器,需要安装不同的驱动

Firefox 浏览器驱动:​​​​​​​​​​​​​​Firefox

Chrome 浏览器驱动:Chrome

Edge 浏览器驱动:​​​​​​​Edge

        推荐chrome谷歌浏览器作为模拟浏览器,因此还需要chromedriver作为驱动,但 Chrome 在用 selenium 进行自动化测试时还是有部分 bug ,常规使用没什么问题,但如果出现一些很少见的报错,可以使用 Firefox 进行尝试,毕竟是 selenium 官方推荐使用的。 

        现在,因为相应版本选择需要查看谷歌浏览器版本,在chrome浏览器上方地址栏输入: 

chrome://settings/help

Python selenium基础用法详解

 4、下载驱动

打开 Chrome驱动 。单击对应的版本。

Python selenium基础用法详解

根据自己的操作系统,选择下载 

将 chromedriver.exe 保存到任意位置,并把当前路径保存到环境变量中(我的电脑>>右键属性>>高级系统设置>>高级>>环境变量>>系统变量>>Path),添加的时候要注意不要把 path 变量给覆盖了,如果覆盖了千万别关机,然后百度。添加成功后使用下面代码进行测试。

from selenium import webdriver
driver = webdriver.Chrome()

5、定位页面

使用 selenium 定位页面元素的前提是你已经了解基本的页面布局及各种标签含义。要定位并获取页面中的信息,首先要使用 webdriver 打开指定页面,再去定位。

from selenium import webdriver
# 不自动关闭浏览器
option = webdriver.ChromeOptions()
option.add_experimental_option("detach", True)
driver = webdriver.Chrome(chrome_options=option)
driver.get('https://www.csdn.net/')

6、几种常见的页面元素定位方式

id 定位

标签的 id 具有唯一性,假设有input标签如下。

<input id="toolbar-search-input" autocomplete="off" type="text" value="" placeholder="C++难在哪里?">

driver.find_element_by_id("toolbar-search-input")

name 定位 

name 指定标签的名称,在页面中可不唯一。假设有meta标签如下

<meta name="keywords" content="CSDN博客,CSDN学院,CSDN论坛,CSDN直播">

driver.find_element_by_name("keywords")

class 定位

class 指定标签的类名,在页面中可不唯一。假设有div标签如下

<div class="toolbar-search-container">

driver.find_element_by_class_name("toolbar-search-container")

tag 定位

假设有div标签如下​​​​​​​

<div class="toolbar-search-container">

driver.find_element_by_tag_name("div")

link 定位

link 专门用来定位文本链接

<div class="practice-box" data-v-04f46969="">顶顶顶</div>

driver.find_element_by_link_text("顶顶顶")

7、浏览器控制 

修改浏览器窗口大小

from selenium import webdriver

# Chrome浏览器
driver = webdriver.Chrome()
driver.get('https://www.csdn.net/')
# 设置浏览器浏览器的宽高为:500x900
driver.set_window_size(500, 900)

显示全屏:

from selenium import webdriver

# Chrome浏览器
driver = webdriver.Chrome()
driver.get('https://www.csdn.net/')
driver.maximize_window()

浏览器前进、后退

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()

# 访问CSDN首页
driver.get('https://www.csdn.net/')
sleep(2)
#访问CSDN个人主页
driver.get('https://blog.csdn.net/m0_63794226?spm=3001.5343')
sleep(2)
#返回(后退)到CSDN首页
driver.back()
sleep(2)
#前进到个人主页
driver.forward()
# 新标签中打开
js = "window.open('https://www.csdn.net/')"
driver.execute_script(js)

浏览器刷新

driver.refresh()# 刷新页面

二、常见操作

Python selenium基础用法详解Python selenium基础用法详解

Python selenium基础用法详解

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
社会演员多的头像社会演员多普通用户
上一篇 2023年3月5日 下午4:43
下一篇 2023年3月5日

相关推荐