在嘗試撰寫代碼以在內部網站中上傳檔案時,我在 SeleniumVBA 中收到附加錯誤。你能幫助我如何糾正它。
我正在嘗試登錄網站并從源上傳檔案以下載資料,但是當我將檔案路徑作為 sendkeys 發送并運行代碼時,它給了我一個錯誤
它是我要求發送密鑰以上傳檔案的最后一行,這會導致錯誤。

Option Explicit
Dim mydriver As New Selenium.WebDriver
Sub openrtweb()
Dim login_ As String
Dim password_ As String
Dim file_to_send As String
Dim FindBy As New Selenium.By
Dim button As Selenium.WebElement
Dim upload_ As Selenium.WebElement
mydriver.Start "chrome"
mydriver.Get "http://rtweb/login/"
login_ = Sheet1.Range("B1").Text
password_ = Sheet1.Range("B2").Text
file_to_send = "D:\Ecommerce\Excel Experiments\SOH\1. TBL Flash Sales sha- STK.txt"
AppActivate ("CHROME")
mydriver.FindElementByName("ctl00$ContentPlaceHolder1$txtUsername").SendKeys login_
mydriver.FindElementByName("ctl00$ContentPlaceHolder1$txtPassword").SendKeys password_
mydriver.Wait 1000
mydriver.FindElementByName("ctl00$ContentPlaceHolder1$btnLogin").Click
mydriver.Get "http://rtweb/cr-mis-report/"
'mydriver.FindElementByName("UploadFile2", 1000).Click
'mydriver.FindElementByXPath("//input[@name='UploadFile2']", 1000).SendKeys file_path
Set button = mydriver.FindElementByCss("//input[@name=""UploadFile2""]")
button.SendKeys file_to_send
'"//input[@name='UploadFile2']",1000
End Sub
uj5u.com熱心網友回復:
你的問題在這里:
Set button = mydriver.FindElementByCss("//input[@name=""UploadFile2""]")
"//input[@name=""UploadFile2""]"是 XPath 運算式,而不是 CSS 選擇器。
所以,請將其更改為:
Set button = mydriver.FindElementByCss("input[name='UploadFile2']")
或者
Set button = mydriver.FindElementByXpath("//input[@name='UploadFile2']")
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/518023.html
標籤:擅长vba硒路径css 选择器
下一篇:VBA洗掉5個空格后的所有內容
