我將 Selenium 與最新的 Chrome 驅動程式一起使用,腳本會打開一個 Windows 視窗來選擇要上傳的圖片。
它可以作業,但是打字太慢了,就像慢動作 10 Letters > 3-5 Sec....
我使用這個命令:
SendKeys.SendWait(...);
另一方面,在 Chrome 視窗中,SendKeys 非常快,你看不到正在輸入,文本在這里是即時的,但在 Windows 視窗中上傳圖片卻沒有......
driver.FindElement(By.XPath("...")).SendKeys("...");
任何人都知道為什么會發生這種情況以及我如何解決這個問題?
uj5u.com熱心網友回復:
也許這會幫助您 如何使用 Selenium WebDriver 處理 Windows 檔案上傳?
我認為
SendKeys.SendWait(...);
正在以這種方式作業-添加帶有字母的串列,然后先鍵入,完成后等待,然后才添加下一個。這就是為什么添加更多字母需要更長的時間才能完成。
有來自 - https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.sendkeys.sendwait?view=windowsdesktop-6.0的備注
使用 SendWait 將擊鍵或擊鍵組合發送到活動應用程式并等待處理擊鍵訊息。您可以使用此方法將擊鍵發送到應用程式并等待由擊鍵啟動的任何行程完成。如果其他應用程式必須在您的應用程式繼續之前完成,這可能很重要。
你的硒代碼:
driver.FindElement(By.XPath("...")).SendKeys("...");
正在將您的完整文本字串從“...”添加到 web 元素。這就是為什么您的全文已經在您的元素中。與復制和粘貼相同。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/420036.html
標籤:
