python之selenium库安装及用法(定位法、获取文本、文本框输入、鼠标点击、滑动滚动条)
创始人
2024-05-31 10:41:20
0次

一、selenium库安装

pip install selenium

二、浏览器驱动安装

谷歌浏览器驱动下载地址:https://chromedriver.storage.googleapis.com/index.html

根据你电脑的谷歌浏览器版本,下载相应的就行。我下载的是110.0.5481.XX中的chromedriver_win32.zip

下载完成,解压将里面的chromedriver.exe放到你python安装路径的scripts文件夹中。

在这里插入图片描述

三、简单使用

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

能打开百度网页说明安装成功

四、各种使用方法

(一)定位法

input_box = browser.find_element_by_id("kw")
定位一个元素定位多个元素含义
find_element_by_idfind_elements_by_id通过元素id定位
find_element_by_namefind_elements_by_name通过元素name定位
find_element_by_xpathfind_elements_by_xpath通过xpath表达式定位
find_element_by_link_textfind_elements_by_link_text通过完整超链接定位
find_element_by_partial_link_textfind_elements_by_partial_link_text通过部分链接定位
find_element_by_tag_namefind_elements_by_tag_name通过标签定位
find_element_by_class_namefind_elements_by_class_name通过类名进行定位
find_element_by_css_selectorfind_elements_by_css_selector通过css选择器进行定位

(二)获取元素

1、获取文本

from selenium.webdriver.common.by import By
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('https://www.baidu.com')
search_button = browser.find_element(by=By.XPATH,value="/html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/span[2]")
value1 = search_button.get_attribute("textContent")  # 获取文本方式1
value2 = search_button.get_attribute("innerText")   # 获取文本方式2
print(value1,value2)   # =按图片搜索

2、获取value属性值

browser.get('https://www.baidu.com')
search_button = browser.find_element_by_id("su")
value = search_button.get_attribute("value")   # 获取value属性值
print(value)   # =百度一下

(三)文本框输入

browser.get('https://www.baidu.com')
search_button = browser.find_element(by=By.ID,value="kw")
search_button.send_keys("你好,世界!")    # 文本框输入

(四)按钮点击

1、鼠标左击

browser.get('https://www.baidu.com')
search_button = browser.find_element(by=By.ID,value="su")
search_button.click()   # 点击

2、鼠标右击

from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.by import By
browser.get('https://www.baidu.com')
search_button = browser.find_element(by=By.ID,value="su")
ActionChains(browser).context_click(search_button).perform()  # 鼠标右击

3、鼠标双击

ActionChains(browser).double_click(search_button).perform()  # 鼠标双击

(五)浏览器操作

1、页面刷新

browser = webdriver.Chrome()
browser.get('https://www.baidu.com')
browser.refresh()   # 当前页面刷新

2、修改窗口大小、全屏显示

browser = webdriver.Chrome()
browser.set_window_size(800, 600)  # 修改窗口大小
browser.maximize_window()   # 全屏显示

3、滑动进度条

browser = webdriver.Chrome()
browser.get('https://www.baidu.com/s?wd=你好世界')
browser.execute_script("window.scrollTo(0,300)")  # 滑动进度条

4、关闭浏览器

from selenium import webdriver
browser = webdriver.Chrome()
browser.get('https://www.baidu.com/s?wd=你好世界')
browser.close()   # 关闭浏览器

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...