html - VBA-Wedriver-Selenium-Xpath - 修改类值 - 单击按钮 -Excel
问题描述
我正在使用 Chrome Webdriver 打开一个网站。我想在一个框中将值修改为 12 而不是 10
HTML 代码
<div class="input-currency input-colors">
<input type="tel" autocomplete="off" class="input-currency__input" data-test="deal-amount-input" maxlength="9" value="10" />
<div class="input-currency__values"><span class="input-currency__value">10</span> <span class="input-currency__sign psign">Đ</span></div>
</div>
我的代码
Dim Bot As WebDriver
Dim posts As WebElements, post As WebElement
Set Bot = New WebDriver
Bot.Start "chrome"
Bot.Get "https://olymptrade.com/platform#"
Bot.FindElementsByXPath("//span[contains(@class,'input-currency__value')]").Values = 12
Bot.FindElementByClass("input-currency input-colors").Text
还有一个绿色的购买按钮,我想点击它。
HTML 代码
<div class="deal-buttons__item deal-buttons__item_up">
<button data-test="deal-button-up" class="deal-buttons__button deal-buttons__button_up">
<span>
<span class="deal-buttons__text">80%</span>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="#FFF" fill-opacity="0.5" class="deal-buttons__svg deal-buttons__svg_arrow">
<path d="M14.6 8l-8.3 8.3a1 1 0 0 0 1.4 1.4L16 9.4V17a1 1 0 0 0 2 0V7a1 1 0 0 0-1-1H7a1 1 0 1 0 0 2h7.6z"></path>
</svg>
</span>
</button>
</div>
我的代码
Bot.FindElementsByXPath("//span[contains(@class,'deal-buttons__text ')]").Click
Bot.FindElementsByXPath("//button[contains(@class,'deal-buttons__button deal- buttons__button_up')]").Click
我想使用 selenium webdriver 更改值并单击购买按钮
提示我的错误
解决方案
FindElements
返回一个集合。您需要一个 webElement,即该集合的单个项目。您需要确定适当的索引并使用它,或者,如果想要第一次匹配,请使用方法,例如如下所示,它们是单数的。
Bot.FindElementByCss(".input-currency input").SendKeys "12" 'though you may need to clear element first
如果需要先清除:
With Bot.FindElementByCss(".input-currency input")
.Clear
.SendKeys "12"
End With
按钮 html 不是由您提供的,但您再次需要单一的方法或索引。假设先要,并且 xpath 正确:
Bot.FindElementByXPath("//span[contains(@class,'deal-buttons__text ')]").Click
推荐阅读
- javascript - 无法从输入字段获取用户输入并将其分配给另一个 div 的 innerHTML
- javascript - 尝试将 lodash 代码转换为 es6 方法;它抛出错误?
- javascript - 如何将 map 函数中的变量放入 Apollo 变异变量中?
- reactjs - 使用 Hashrouter 登录时重定向
- android - SwitchPreference 无法正常工作 - 为什么会这样?
- node.js - 如何发送带参数的 GET 请求
- php - 如何在php中创建删除行按钮
- php - 如何使用 HTML 中的选择框在数据库中搜索特定用户并在表格中显示该信息?
- python - 是否可以使用 pyomo 对最小最大问题进行建模
- python - 使用 Python 获取当前月份的所有日期