Python+Selenium 自动化 - 浏览器调用与驱动配置

news2024/11/26 14:29:56

Python+Selenium 自动化 - 浏览器调用与驱动配置

  • 一、浏览器版本查看与驱动下载
  • 二、selenium 库安装与调用
  • 三、常用命令解释

一、浏览器版本查看与驱动下载

通过关于可以看到浏览器的版本。
在这里插入图片描述
如果是新版浏览器,可以在这个地址下载:https://googlechromelabs.github.io/chrome-for-testing/
在这里插入图片描述
如果是 114 版本之前的浏览器,可以在下面的地址下载:https://chromedriver.chromium.org/downloads
在这里插入图片描述
在这里插入图片描述
下载后把包里的 chromedriver.exe 放到我们安装的 python 根目录下:
在这里插入图片描述
根目录是程序默认找驱动的位置。
在这里插入图片描述
如果看不到拓展名,可以这样设置放开。
在这里插入图片描述

二、selenium 库安装与调用

打开 cmd,通过 pip install selenium 命令安装 selenium 库。
在这里插入图片描述
在这里插入图片描述
下面的代码可实现调用浏览器,打开百度网页,等待 3 秒后再关闭浏览器。

from selenium import webdriver
import time

driver = webdriver.Chrome()  # 使用 Chrome 浏览器

driver.get("https://www.baidu.com")  # 打开网页

time.sleep(3)  # 等待3秒

driver.close()  # 关闭窗口
driver.quit()  # 关闭浏览器

如果里面包含中文报错,可以修改文件的编码类型为 utf-8
在这里插入图片描述

三、常用命令解释

1. 导入 Selenium 模块

from selenium import webdriver

2. 创建一个 WebDriver 实例

driver = webdriver.Chrome()  # 使用 Chrome 浏览器

或者你也可以使用其他浏览器,比如 Firefox

driver = webdriver.Firefox()

3. 打开一个网页

driver.get("https://www.example.com")

4. 查找元素

element = driver.find_element("xpath", "//input[@id='search']")

或者使用其他查找方式,比如通过 ID

element = driver.find_element("id", "search")

5. 在输入框中输入文本

element.send_keys("hello Selenium")

6. 单击按钮

button = driver.find_element("xpath", "//button[@id='submit']")
button.click()

7. 获取元素的文本

text = element.text

8. 获取当前页面的 URL

current_url = driver.current_url

9. 关闭当前窗口

driver.close()

10. 关闭整个浏览器

driver.quit()

用下面的方法可以快速复制元素的 xpath 路径。
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1590952.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

怎么把多个音频剪辑合并到一起?快来试试实用音频的合并方法,一键就能无损拼接!

一,什么是音频合并 音频合并是一种将多个音频文件组合成一个单一文件的过程。这个过程在音频编辑、音乐制作、语音识别、电影制作等领域中非常常见。音频合并的目的是为了方便管理和播放,以及实现更复杂的音频处理需求。 二,音频合并的原理…

【蓝桥杯】蓝桥杯算法复习(五)

😀大家好,我是白晨,一个不是很能熬夜😫,但是也想日更的人✈。如果喜欢这篇文章,点个赞👍,关注一下👀白晨吧!你的支持就是我最大的动力!&#x1f4…

数据结构复习指导之绪论(数据结构的基本概念)

文章目录 绪论: 考纲内容 知识框架 复习提示 1.数据结构的基本概念 1.1基本概念和术语 1.数据 2.数据元素 3.数据对象 4.数据类型 5.数据结构 1.2数据结构三要素 1.数据的逻辑结构 2.数据的存储结构 3.数据的运算 绪论: 考纲内容 算法时…

jdk和Eclipse软件安装与配置(保姆级别教程)

目录 1、jdk的下载、安装、配置 1.1 jdk安装包的的下载地址:Java Archive | Oracle ,点击进入,然后找到你想要的版本下载,如下图: 2.1 开始下载,如下图: 3.1 登入Oracle账号就可以立即下载了…

开发有哪些常见陷阱?

引言 在当今数字化时代,软件开发已成为推动科技进步和商业发展的重要引擎。然而,软件开发并非一帆风顺,其中蕴藏着许多陷阱和挑战。如何避免这些陷阱,提高软件开发的效率和质量,成为开发者们面临的重要问题 本文将深…

redis-缓存穿透与雪崩

一,缓存穿透(查不到) 在默认情况下,用户请求数据时,会先在缓存(Redis)中查找,若没找到即缓存未命中,再在数据库中进行查找,数量少可能问题不大,可是一旦大量的请求数据&a…

谷歌google浏览器无法更新Chrome至最新版本怎么办?浏览器Chrome无法更新至最新版本

打开谷歌google浏览器提示:无法更新Chrome,Chrome无法更新至最新版本,因此您未能获得最新的功能和安全修复程序。点击「重新安装Chrome」后无法访问此网站,造成谷歌浏览器每天提示却无法更新Chrome至最新版本。 谷歌google浏览器无…

开源AI项目:合同检查流程优化,提高工作效率与准确性

合同检查是企业法务管理中的重要环节,它不仅关系到企业合规经营,还直接影响到企业的经济效益和风险控制。随着人工智能技术的不断发展,AI在合同管理领域的应用逐渐成为提高工作效率和准确性的有效手段。本文将探讨如何结合AI技术,…

构建智能连接的未来:物联网平台系统架构解析

随着科技的不断进步和互联网的普及,物联网(Internet of Things, IoT)已成为连接世界的新方式。物联网平台作为实现物联网应用的核心基础设施,其系统架构的设计和实施至关重要。本文将深入探讨物联网平台系统架构的关键要素和最佳实…

MySQL高级--14--group by 分组取时间最新的一条数据

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 group by 分组取时间最新的一条数据数据准备错误查询分析错误原因解决思路: 实现方法一(使用 LIMIT 查询)实现方法二&#xff08…

电子章是怎么盖上去的?

电子章是怎么盖上去的呢,本文介绍利e-章宝(易友EU3000智能盖章软件)盖电子骑缝章的方法。如下: 1.在软件中导入待批量盖章的PDF文件 如下图,在“待盖章PDF文件”区域,点“添加”,导入待盖章PDF文件。 如上图&#xf…

Linux第89步_了解异步通知及其结构和函数

1、了解“异步通知” “异步通知”的核心就是信号。信号是采用软件模拟的“中断”,它由“驱动程序”主动向“应用程序”发送信号,并报告自己可以访问了,“应用程序”收到信号以后,就从“驱动设备”中读取或者写入数据。整个过程就…

npm install 报 ERESOLVE unable to resolve dependency tree 异常解决方法

问题 在安装项目依赖时,很大可能会遇到安装不成功的问题,其中有一个很大的原因,可能就是因为你的npm版本导致的。 1.npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree 2.ERESOLVE unable to resolve dependenc…

赋能未来:AI技术革新中的创业契机

目录 前言 一、行业解决方案 1、行业参考说明 2、操作步骤建议 二、智能产品和服务 1、行业参考说明 2、操作步骤建议 三、教育和培训 1、行业参考说明 2、操作步骤建议 总结 前言 随着人工智能(AI)技术的快速发展,越来越多的创业…

高质量ChatGPT Prompts 精选

通用超级 Prompt GPT4实用。通用超级 prompt ,根据你想要的输出和你的反馈,自动使用相应的专家角色帮你解决问题。如果需要升级ChatGPT Plus,可以参考教程 升级 GPT4.0 保姆教程 您是一位具有多领域专长的专家级ChatGPT提示工程师。在我们…

IP证书申请流程

目录 域名与IP的关系 SSL证书绑定域名还是绑定IP? IP证书支持免费申请吗? 如何申请IP地址证书 IP类型的SSL证书,又称之为IP SSL,这种SSL证书是专门用于公网IP地址验证的一种数字证书。 主要功能就是解决IP地址明文传输的安全…

【JAVA基础篇教学】第八篇:Java中List详解说明

博主打算从0-1讲解下java基础教学,今天教学第八篇:Java中List详解说明。 在 Java 编程中,List 接口是一个非常常用的集合接口,它代表了一个有序的集合,可以包含重复的元素。List 接口提供了一系列操作方法,…

Pytorch: 利用预训练的残差网络ResNet50进行图像特征提取,并可视化特征图热图

1. 残差网络ResNet的结构 2.图像特征提取和可视化分析 import cv2 import time import os import matplotlib.pyplot as plt import torch from torch import nn import torchvision.models as models import torchvision.transforms as transforms import numpy as npimgname…

Windows 2003 R2与Windows 2022建立域信任报错:本地安全机构无法跟域控制器获得RPC连接。请检查名称是否可以解析,服务器是否可用。

在Windows Server 2003 R2与Windows Server 2022之间建立域信任时遇到“本地安全机构无法与域控制器获得RPC连接”的错误,可能是由于以下几种原因: DNS 解析问题: 确保源域和目标域的DNS配置正确,能够互相解析对方的域名和IP地址。…

Kubernetes学习笔记12

k8s核心概念:控制器: 我们删除Pod是可以直接删除的,如果生产环境中的误操作,Pod同样也会被轻易地被删除掉。 所以,在K8s中引入另外一个概念:Controller(控制器)的概念,…