【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.pswp.cn/web/23957.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/23957.shtml
英文地址,請注明出處:http://en.pswp.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;函數的遞歸:預定義…

在 VSCode 中搭建 Flutter 開發環境并運行項目

要在 Visual Studio Code (VSCode) 中運行 Flutter 項目并啟動虛擬機&#xff08;例如 Android Emulator&#xff09;&#xff0c;可以按照以下步驟進行設置和操作&#xff1a; 一、安裝 Flutter 和 Dart 插件 安裝 Flutter SDK&#xff1a; 前往 Flutter 官網 下載并安裝 Flu…

離散數學答疑 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;主題建模是理解和提取大量文本數據隱…

【常用工具系列】Git 教程——從入門到大師

目錄 前言一、Git 基礎1-1、Git 簡介與安裝安裝 Git 1-2、 Git 工作流程1-3、 Git 配置與管理用戶配置查看配置 1-4、 Git 倉庫操作克隆倉庫推送更改拉取更新 1-5 Git 分支管理創建分支切換分支刪除分支解決沖突 二、 Git 進階2-0、 Git 標簽使用創建標簽查看標簽檢出標簽推送標…

「動態規劃」如何求最小路徑和?

64. 最小路徑和https://leetcode.cn/problems/minimum-path-sum/description/ 給定一個包含非負整數的m x n網格grid&#xff0c;請找出一條從左上角到右下角的路徑&#xff0c;使得路徑上的數字總和為最小。說明&#xff1a;每次只能向下或者向右移動一步。 輸入&#xff1a;…

《嵌入式系統導論》

計算題 已知位帶別名基地址為0x220000000,計算位于位帶區的0x200FFFFF地址的數據位7,計算它對應的位帶別名區地址。 別名地址=位帶別名基地址+字節偏移量x32+位號x4 別名地址=0x22000000+(0x200FFFFF -0x20000000)*32+7*4=0x220000807 分析如下基本定時器配置語句。 { ………

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…

Mongodb數組元素更新之使用$定位數組第一個元素

學習mongodb&#xff0c;體會mongodb的每一個使用細節&#xff0c;歡迎閱讀威贊的文章。這是威贊發布的第63篇mongodb技術文章&#xff0c;歡迎瀏覽本專欄威贊發布的其他文章。 閱讀了不少Mongodb的文章&#xff0c;也和同事交流過。Mongodb數組更新是比較難理解的地方&#x…

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…

Go 文件壓縮解壓

在Go語言中&#xff0c;archive/zip包提供了創建、讀取和解壓縮ZIP格式文件的功能。 一、創建ZIP文件并添加內容----壓縮 package mainimport ("archive/zip""bytes""fmt""io""log""os" )func main() {// 創建一…

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; 機器人阻抗…