【WEB自动化面试02--学习过程的问题及解决】

day01

1、报错获取不到浏览器二进制文件:需要指定浏览器路径及驱动路径。

第一次使用谷歌浏览器驱动,找不到二进制文件报错:
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot find Chrome binary
Stacktrace:原因:没有把谷歌浏览器安装在默认的地方这个错误信息表明在尝试初始化webdriver.Chrome()时,Selenium无法找到Chrome浏览器的二进制文件。错误信息为:“unknown error: cannot find Chrome binary”。这通常发生在以下几种情况:Chrome未安装:确保Google Chrome浏览器已经安装在你的系统上,并且安装在默认路径。对于Windows系统,Chrome通常安装在C:\Program Files (x86)\Google\Chrome\Application\chrome.exe或者C:\Program Files\Google\Chrome\Application\chrome.exe。安装路径非标准:如果Chrome安装在非标准路径,Selenium可能无法自动找到它。在这种情况下,你需要在Selenium的ChromeOptions中手动指定Chrome的位置。环境变量问题:确保系统的环境变量中包含了Chrome的路径,这样Selenium就能找到Chrome的二进制文件。针对这个问题,如果Chrome已经安装但Selenium仍然报错,你可以通过以下方式手动指定Chrome的路径:

 指定路径的代码:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Optionschrome_driver_path = "D:/path/to/chromedriver.exe"  # Chrome Driver的路径
chrome_binary_path = "C:/Program Files/Google/Chrome/Application/chrome.exe"  # Chrome浏览器的路径,根据实际安装位置调整options = Options()
options.binary_location = chrome_binary_path
service = Service(executable_path=chrome_driver_path)driver = webdriver.Chrome(service=service, options=options)

请确保将chrome_driver_pathchrome_binary_path替换为你系统上实际的路径。这样,Selenium就能正确地找到并使用Chrome浏览器了。

2、selenium的原理

地址:了解组件 | Selenium

3、更新pip的指令

python -m pip install --upgrade pip -i https://mirrors.aliyun.com/pypi/simple/

day02

1、会手写Xpath--只用相对路径

 1)通过唯一标识的方式

不管是什么元素类型,使用通配符*

el = driver.find_element(By.XPATH,"//*[@ID='topBooks2']")

 

 在确定元素类型的情况下,使用元素类型 dl 去匹配元素

el = driver.find_element(By.XPATH,"//dl[@ID='topBooks2']")

2)以。。开头--模糊查询

el = driver.find_element(By.XPATH,'//a[starts-with(text(),"神医毒妃")]')

3)包含

el = driver.find_element(By.XPATH,'//a[contains(text(),"神医毒妃")]')

4)苏雪梅

要编写XPath来定位包含“苏雪梅”的元素1. **直接定位包含文本的`<a>`标签**://td[@class='name']/a[contains(text(),'苏雪梅')]这个XPath查找类名为`name`的`<td>`标签下的`<a>`标签,其中包含文本“苏雪梅”。2. **使用文本定位整个`<td>`标签**://td[contains(.,'苏雪梅')]这个XPath查找任何包含“苏雪梅”文本的`<td>`标签。点(`.`)表示当前节点,所以`contains(.,'苏雪梅')`是查找当前节点及其子节点中包含指定文本的情况。3. **基于特定父标签的ID定位**://tbody[@id='newRankBooks2']//a[contains(text(),'苏雪梅')]```如果页面上有多个元素包含“苏雪梅”且你只对特定区域(例如ID为`newRankBooks2`的`<tbody>`内的元素)感兴趣,这个XPath会更加精确。4. **考虑使用兄弟节点定位**:如果你想基于与目标元素相邻的其他元素(例如作者名“张莹”)来定位“苏雪梅”,可以使用如下XPath://td[a[contains(text(),'张莹')]]/preceding-sibling::td[@class='name']/a[contains(text(),'苏雪梅')]这个XPath首先定位包含文本“张莹”的`<a>`标签的`<td>`标签,然后向前查找前一个兄弟`<td>`标签,该标签的类为`name`,并且其子`<a>`标签包含文本“苏雪梅”。

day03

1、等待

1)强制等待--调试代码

import time time.sleep(3)程序执行到此处会强制等待3s

2)隐式等待

driver.implicitly_wait(2)表示对程序执行整个生命周期内的元素都会等待2s.不需要导包哦

3)显式等待

4)包含下拉框的项目地址

包含下拉框的项目地址:https://sahitest.com/demo/selectTest.ht

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

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

相关文章

短视频矩阵源码----如何做正规开发规则分享:

一、什么是SaaS化服务技术开发&#xff1f; &#xff08;短视频矩阵系统是源头开发的应该分为3个端口---- 总后台控制端、总代理端口&#xff0c;总商户后台&#xff09; SaaS是软件即服务&#xff08;Software as a Service&#xff09;的缩写。它是一种通过互联网提供软件应…

Vue2(0基础入门)

环境准备 安装脚手架 vuecli: npm install -g vue/clivite: npm init vuelatest-g 全局安装&#xff0c;任意目录都可以使用vue脚本 进入目录创建项目&#xff1a; 在目录的终端输入&#xff1a;vue ui安装devtool(这个网页是安装好了自动跳转的) 运行项目&#xff1a; …

代码随想录第27天|贪心算法part1

455.分发饼干 先给孩子和饼干排序&#xff0c;每次选取一个最大的饼干给一个最大胃口的孩子&#xff0c;直到饼干分完或者遍历完孩子 class Solution { public:int findContentChildren(vector<int>& g, vector<int>& s) {sort(g.begin(), g.end());sort(…

Vue3【三】 使用TS自己编写APP组件

Vue3【三】 使用TS自己编写APP组件 运行截图 目录结构 注意目录层级 文件源码 APP.vue <template><div class"app"><h1>你好世界!</h1></div> </template><script lang"ts"> export default {name:App //组…

JavaScript的核心语法

JavaScript JavaScript&#xff1a;JavaScript的组成&#xff1a;核心语法&#xff1a;Hello&#xff1a;变量&#xff1a;JS的基本数据类型&#xff1a;特殊点&#xff1a; 数组&#xff1a;流程控制语句&#xff1a;函数&#xff1a;函数的重载&#xff1a;函数的递归:预定义…

离散数学答疑 3

&#xff5e;A&#xff1a;A的补集 有时候空集是元素&#xff0c;有时候就是纯粹的空集 A-B的定义&#xff1a; 笛卡尔积&#xff1a; 求等价关系&#xff1a;先求划分再一一列举 不同划分&#xff1a;分几块。一块&#xff1a;两块&#xff1a;三块&#xff1a;分别计算 Ix是…

自然语言处理(NLP)—— 主题建模

1. 主题建模的概念 主题建模&#xff08;Topic Modeling&#xff09;是一种用于发现文档集合&#xff08;语料库&#xff09;中的主题&#xff08;或称为主题、议题、概念&#xff09;的统计模型。在自然语言处理和文本挖掘领域&#xff0c;主题建模是理解和提取大量文本数据隐…

「动态规划」如何求最小路径和?

64. 最小路径和https://leetcode.cn/problems/minimum-path-sum/description/ 给定一个包含非负整数的m x n网格grid&#xff0c;请找出一条从左上角到右下角的路径&#xff0c;使得路径上的数字总和为最小。说明&#xff1a;每次只能向下或者向右移动一步。 输入&#xff1a;…

ctfshow-web入门-命令执行(web37-web40)

目录 1、web37 2、web38 3、web39 4、web40 命令执行&#xff0c;需要严格的过滤 1、web37 使用 php 伪协议&#xff1a; ?cphp://input post 写入我们希望执行的 php 代码&#xff1a; <?php system(tac f*);?> 拿到 flag&#xff1a;ctfshow{5c555d9a-6f55…

EXCEL多sheet添加目录跳转

EXCEL多sheet添加目录跳转 背景 excel中有几十个sheet&#xff0c;点下方左右切换sheet太耗时&#xff0c;希望可以有根据sheet名超链接跳转相应sheet&#xff0c;处理完后再跳回原sheet。 方案一 新建目录sheet&#xff0c;在A1写sheet名&#xff0c;右键选择最下方超链接…

问题:材料题请点击右侧查看材料问题 查看材料 #学习方法#经验分享#学习方法

问题&#xff1a;材料题请点击右侧查看材料问题 查看材料 A.Colleges may reduce their enrollment. B.Top universities become increasingly competitive. C.Universities become selective in student admission. D.Colleges invest less in academy and infrastructure…

el-input中change事件造成的坑

el-input中change事件造成的坑 一、change事件定义二、如果仅回车时候触发 一、change事件定义 仅在输入框失去焦点或用户按下回车时触发 二、如果仅回车时候触发 <el-inputv-model.trim"questionInput"placeholder"请输入你的问题&#xff0c;按回车发送&…

智慧视觉怎么识别视频?智慧机器视觉是通过什么步骤识别视频的?

智慧视觉功能怎么识别视频&#xff1f;智慧视觉是搭载在智能设备比如手机、AI盒子、机器视觉系统上的一个应用程序或特性&#xff0c;采用计算机视觉和人工智能的技术来识别图像或视频中的内容。如果想了解视频识别&#xff0c;就要明白智慧视觉功能会涉及的以下几个关键步骤和…

pxe自动装机

概念 pxe是c/s模式。允许客户端通过网络从远程服务器&#xff08;服务端&#xff09;下载引导镜像&#xff0c;加载安装文件&#xff0c;实现自动化安装操作系统。 无人值守&#xff1a;安装选项不需要人为干预&#xff0c;可以自动化实现。 pxe的优点&#xff1a;1.规模化&…

机器人阻抗控制中的机械阻抗模型

机器人阻抗控制中的机械阻抗模型主要涉及到通过修改机器人与环境接触作业的动力学模型&#xff0c;使其等效为一个期望的阻抗&#xff08;弹簧-质量-阻尼&#xff09;模型。以下是对机械阻抗模型在机器人阻抗控制中的详细解释&#xff1a; 阻抗控制原理&#xff1a; 机器人阻抗…

Python——泰坦尼克号数据分析

目录 🧾1.数据集(部分数据) ✏️ 2、导入数据集与必要模块 ⌨️ 3.数据预处理 1️⃣ isnull函数查看有无缺失值 2️⃣fillna函数填充缺失值 📍 Age字段使用平均值填充缺失值 📍 Embarked字段填充缺失值 3️⃣ 删除缺失值较多的字段 📊 4.数据可视化 1️⃣ di…

流媒体服务器SMS-语音对讲(二)

1.简介 上篇文件介绍了流媒体与设备之间可能的交互场景&#xff0c;本文将介绍客户端或者web端与摄像头对讲的总体流程。 老规矩&#xff0c;介绍一下本人的开源流媒体&#xff0c;点个star&#xff0c;有兴趣一起开发的朋友也可以联系本人&#xff1a;https://gitee.com/inyem…

[数据集][目标检测]医疗防护服检测数据集VOC+YOLO格式649张7类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;649 标注数量(xml文件个数)&#xff1a;649 标注数量(txt文件个数)&#xff1a;649 标注类别…

echarts学习: 在图表中添加多条y轴会怎么样?

前言 在撰写如何绘制双y轴图表文章时&#xff0c;我突然萌生出了一个想法&#xff0c;如果给图表添加两个以上的y轴会怎么样呢? 带着这个问题我开始了自己的探索之旅。 我找到了一篇优秀的文章作为参考&#xff0c;虽然它需要付费&#xff0c;但是不要紧&#xff0c;文中免费…

Vulnhub-DC-4

靶机IP:192.168.20.138 kaliIP:192.168.20.128 网络有问题的可以看下搭建Vulnhub靶机网络问题(获取不到IP) 信息收集 nmap扫下端口及版本 dirsearch扫下目录 没发现什么敏感信息&#xff0c;看下前端界面 想到会不会存在SQL注入&#xff0c;弱密码等漏洞。 经过测试SQL注入…