我试图单击网页上的按钮,并不断出现以下错误(对不起,显然不能嵌入图像,否则我将在此处截屏)
运行时错误'0':SeleniumError无效参数
该按钮的Http为
<input type="file" name="import_file" id="import_file" accept=".csv, text/csv">
我已经尝试过bot.FindElementById("import_file").Click
,并且返回了相同的错误,所以我尝试使用名称,同样的错误。
我刚刚尝试过bot.FindElementByCss("input#import_file[type='file'][name='import_file'][accept='.csv, text/csv']").Click
,并且返回相同的错误...
不知道下一步该怎么做;有任何想法吗?我的整个子文件夹都在下面供参考(带有密码等,明显被覆盖)
Sub import_csv()
Dim bot As New WebDriver
bot.Start "chrome", "https://website.com"
bot.Get "/"
'log in
bot.FindElementById("user_login").SendKeys ("####")
bot.FindElementById("user_password").SendKeys ("####")
bot.FindElementByName("commit").Click
'navigate to import screen
bot.Get ("/stocks/import_stocks")
'tick 'File has header row?'
bot.FindElementById("file_has_header").Click
'Click 'Browse...' to open import screen - this is where something isn't working
bot.FindElementByCss("input#import_file[type='file'][name='import_file'][accept='.csv, text/csv']").Click
'import
bot.FindElementByName("commit").Click
bot.SendKeys ("C:\Users\Duane Humphreys\Documents\calendar.CSV")
bot.SendKeys bot.Keys.Enter
bot.FindElementByName("commit").Click
End Sub
编辑:如果要有用,围绕我要单击的按钮的html在下面:
<span class="l-inline-row-block form-file">
<span class="l-inline-col" style="width: 110px;">
<a class="btn-medium btn-alt form-file-btn">
Browse… <input type="file" name="import_file" id="import_file" accept=".csv, text/csv">
</a>
</span>
<span class="l-inline-col">
<input type="text" readonly="">
</span>
</span>
我不认为这可以解决这里发生的一切的根本原因,但是我设法解决了
bot.FindElementById("import_file").ClickAndHold
bot.SendKeys bot.Keys.Enter
我仍然不知道为什么.ClickAndHold
工作和.click
不,但这将会对现在的工作。LMK,如果有一种更干净的方法来实现相同的目标。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句