Hello Playwright:(6)與元素交互

在上一節我們已經了解到如何定位到元素,那么接下來就可以與元素進行交互了。

ff628c97cbbcf3a3a893450dc39a6929.png

下面的例子都是以百度首頁作為測試頁面

輸入文本

FillAsync方法用于模擬用戶選中元素并輸入文本,這會觸發元素的 input 事件。該方法只適合<input>、<textarea>等可輸入的元素。

例如,下面的代碼在搜索框中輸入文本:

await?page.Locator("id=kw").FillAsync("MyIO?Hello?Playwright");

點擊鼠標

ClickAsync方法用于模擬用戶點擊元素,同時會將元素滾動到瀏覽器當前可視范圍內。

例如,點擊搜索按鈕:

await?page.Locator("id=su").ClickAsync();

懸停鼠標

HoverAsync方法用于模擬用戶將鼠標懸停在元素上,同時會將元素滾動到瀏覽器當前可視范圍內。

例如,懸停鼠標在“設置”鏈接上彈出菜單:

await?page.Locator("//*[@id=\"u\"]/a[2]").HoverAsync();

選中單選按鈕

CheckAsync方法用于選中和取消選中復選框或單選按鈕。

例如,在“搜索設置”窗口將“搜索歷史記錄”設為顯示

await?page.Locator("id=sh_1").CheckAsync();

最后整體交互效果如下圖:

var?playwright?=?await?Playwright.CreateAsync();
var?browser?=?await?playwright.Chromium.LaunchAsync(new?BrowserTypeLaunchOptions?{?Headless?=?false,?SlowMo?=?1000,?Channel="chrome",?ChromiumSandbox=true??});var?page?=?await?browser.NewPageAsync();
await?page.GotoAsync("https://www.baidu.com");await?page.Locator("id=kw").FillAsync(Guid.NewGuid().ToString());await?page.Locator("id=su").ClickAsync();await?Task.Delay(2000);await?page.Locator("//*[@id=\"u\"]/a[2]").HoverAsync();await?page.Locator("//*[@id=\"u\"]/div/a[1]/span").ClickAsync();
await?page.Locator("id=sh_1").CheckAsync();

5b5340d0ae736997019b8b1fc330427d.gif

添加微信號【MyIO666】,邀你加入技術交流群

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286121.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286121.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286121.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C語言試題四十六之將m行n列的二維數組中的字符數據,按列的順序依次放到一個字符串中。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫一個…

【MATLAB統計分析與應用100例】案例007:matlab數據的極差歸一化變換

文章目錄 1. 調用rand函數產生一個10行,4列的隨機矩陣,每列服從不同的均勻分布2. 調用rscore函數對x按列進行極差規格化變換, 返回變換后矩陣R,以及矩陣x各列的最小值構成的向量xmin,各列的極差構成的向量xrange1. 調用rand函數產生一個10行,4列的隨機矩陣,每列服從不同…

十二、動態座位響應及用戶訂票《仿淘票票系統前后端完全制作(除支付外)》

一、動態座位設置及發布 首先打開在線編輯器進入我們的項目&#xff1a;https://editor.ivx.cn/ 上一節中已經完成了座位設置的準備&#xff0c;這一節咱們將完成座位設置及發布的功能。 咱們首先給有座位設置事件&#xff1a; 有座位的事件設置當點擊后更改當前的內容為0即…

跨服務器 快速 導入數據表記錄 Insert into SELECT

Use DataBaseName/*開啟Ad Hoc Distributed Queries組件exec sp_configure show advanced options,1 reconfigure exec sp_configure Ad Hoc Distributed Queries,1 reconfigure*/Insert into tableName (col1&#xff0c;col2&#xff0c;col3&#xff0c;……) --字段不能含有…

C# 查詢大型數據集

LINQ 語法非常好&#xff0c;但其作用是什么&#xff1f;我們只要查看源數組&#xff0c;就可以看出需要的結果&#xff0c;為什么要查詢這種一眼就能看出結果的數據源呢&#xff1f;有時查詢的結果不那么明顯&#xff0c;在下面的示例中&#xff0c;就創建了一個非常大的數字數…

C語言試題四十七之程序定義了N×M的二維數組,并在主函數中自動賦值。請編寫函數function(int a[N][M], int m),該函數的功能是:將數組右上半三角元素中的值乘以m。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 程序定義了…

第六章 三大消息摘要算法總結

6.1、MD5 推薦使用CC&#xff08;即Commons Codec&#xff09;實現雖然已被破解&#xff0c;但是仍舊廣泛用于注冊登錄模塊與驗證下載的文件的完整性可以自己寫一個注冊登錄模塊&#xff1b;自己下載一個MD5加密的文件&#xff0c;然后通過之前編寫的工具類&#xff08;或者使用…

一、博客首頁搭建搭建《iVX低代碼仿CSDN個人博客制作》

制作iVX 低代碼項目需要進入在線IDE&#xff1a;https://editor.ivx.cn/ 一、頭部導航欄思路參考 首先我們可以查看CSDN的博客首頁&#xff0c;從中查看一下布局&#xff1a; 在以上首頁中&#xff0c;我們可以得知其頂部為一個整行&#xff0c;這個行內容左側為一個logo&am…

【MATLAB統計分析與應用100例】案例008:調用rand函數生成均勻分布隨機數

文章目錄 1. 生成隨機數分布直方圖2. 生成隨機數矩陣,服從均勻分布1. 生成隨機數分布直方圖 x = rand(10) % 生成10行10列的隨機數矩陣,其元素服從[0,1]上均勻分布 y = x(:)

linux samba服務器

本文轉自wanglm51051CTO博客&#xff0c;原文鏈接&#xff1a; http://blog.51cto.com/studyit2016/1890282&#xff0c;如需轉載請自行聯系原作者

modernizer的意義

modernizer是一個js文件&#xff0c;會檢查當前的瀏覽器支持什么特性&#xff0c;就在Html標簽上添加什么類&#xff0c;然后如果不支持添加no-xxx類&#xff0c;這樣&#xff0c;就可以針對兩種情況寫兩種css。 http://blog.chinaunix.net/uid-21633169-id-4286857.html轉載于…

拆分備份(還原)比較大的數據庫為多個bak文件

工作中由于個別數據庫比較大&#xff0c;生成的備份文件也比較大&#xff0c;不方便存儲或者轉移&#xff0c;可以將文件備份為多個小的bak文件。 比如一個200G的數據庫&#xff0c;可以拆分備份為10個bak文件&#xff0c;則每個bak文件約在20G左右。 備份代碼&#xff1a; /…

C語言試題四十八之該函數可以統計一個長度為2的字符串在另一個字符串中出現的次數。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫一個…

Rafy 框架 - 幽靈插件(假刪除)

Rafy 框架又添新成員&#xff1a;幽靈插件。本文將解釋該插件的場景、使用方法、原理。 場景 在開發各類數據庫應用系統時&#xff0c;往往需要在刪除數據時不是真正地刪除數據&#xff0c;而只是把數據標識為‘已刪除’狀態。這些數據在業務邏輯上是已經完全刪除、不可用的數據…

C#-Linq源碼解析之Average

前言在Dotnet開發過程中&#xff0c;Average作為IEnumerable的擴展方法&#xff0c;十分常用。本文對Average方法的關鍵源碼進行簡要分析&#xff0c;以方便大家日后更好的使用該方法。使用Average 計算數值序列的平均值假如我們有這樣的一個集合List<int> grades new L…

二、博客首頁完成《iVX低代碼仿CSDN個人博客制作》

制作iVX 低代碼項目需要進入在線IDE&#xff1a;https://editor.ivx.cn/ 一、菜單思路參考及制作 在 CSDN 首頁中的菜單部分為一串橫排的內容&#xff0c;并且可以進行拖動&#xff1a; 首先咱們添加一個行&#xff0c;命名為菜單&#xff1a; 接著肯定是需要設置上下的內邊…

【MATLAB統計分析與應用100例】案例009:創建一個RandStream類對象,調用其randn方法生成標準正態分布隨機數

文章目錄 1. 創建一個RandStream類對象s,其隨機數生成器的算法為mlfg6331_64,初始種子為102. 調用對象s的randn方法生成10行10列的隨機數矩陣x,其元素服從標準正態分布1. 創建一個RandStream類對象s,其隨機數生成器的算法為’mlfg6331_64’,初始種子為10 % 對象s的randn方…

CentOS 安裝NTFS-3G,讓系統支持NTFS分區的方法

1、ntfs-3g依賴FUSE&#xff08;Filesystem in Userspace&#xff09; 先處理依賴 安裝FUSE yum install fuse -y 2、下載并安裝ntfs-3g &#xff08;先確定正確安裝了rpmforge 套件&#xff0c;然后安裝下列套件&#xff1a; yum install fuse fuse-ntfs-3g 若rpmforge的設置…

現在是2016-09-23,查詢2個月后的月份和入職的月份相同的數據

select * from emp where to_char(hiredate,mm)to_char(add_months( sysdate,2),mm); 結果&#xff1a; 轉載于:https://www.cnblogs.com/feng666666/p/5900182.html

Git之創建遠程分支和刪除遠程分支

1、創建遠程分支browser-1.8.0 在沒有創造browser-1.8.0之前,我們先查看下所有分支 git branch -a 可以知道我們目前在browser-1.7.0分支,然后我們創建本地分支browser-1.8.0 git branch browser-1.8.0 再看下所有分支 git branch -a 然后我們再切換到分支browser-1.8.…