html - 如何使用 VBA 从 Chrome 的下拉列表中选择一个选项?

标签 html css vba selenium web-scraping

' 子 chromeAuto()

Dim obj As New WebDriver
Dim doc As HTMLDocument
obj.Start "chrome", ""
obj.Get "https://www.website.com/" #######Opens Chrome

    Application.Wait DateAdd("s", 3, Now)

obj.FindElementById("userid").SendKeys ThisWorkbook.Sheets("Sheet1").Range("A1").Value
Application.Wait DateAdd("s", 1, Now)
obj.FindElementByName("password").SendKeys ThisWorkbook.Sheets("Sheet1").Range("B1").Value
obj.FindElementById("btnActive").Click'
##登录网站
Application.Wait DateAdd("s", 2, Now)
obj.FindElementById("pt1:_UIScmil2u::icon").Click
obj.FindElementById("pt1:_UIScmi4").Click
Application.Wait DateAdd("s", 4, Now)
obj.FindElementById("pt1:r1:0:r0:0:r1:0:AP1:soc2::drop").Click #######Opens Drop down list
Application.Wait DateAdd("s", 2, Now)'
# 下面是我从我想选择的按钮中得到的源代码 我正在尝试选择选项 2
  `<ul class="x1qz" id="pt1:r1:0:r0:0:r1:0:AP1:soc2::pop"><li id="pt1:r1:0:r0:0:r1:0:AP1:soc2::sp" 
   class="x1r4"></li>
   <li class="x1r8 p_AFSelected" _adfiv="0">Option 0</li>
   <li class="x1r8" _adfiv="1">Option 1</li>
   <li class="x1r8" _adfiv="2">Option 2</li>
   <li class="x1r8" _adfiv="3">Option 3</li>
   <li class="x1r8" _adfiv="4">Option 4</li>
   <li class="x1r8" _adfiv="5">Option 5</li>
   <li class="x1r8" _adfiv="6">Option 6</li>
   <li class="x1r8" _adfiv="7">Option 7</li>
   </ul>
   `

最佳答案

不看更多的html很难知道但是试试css的属性选择器

obj.findElementByCss("[_adfiv='2']").click

关于html - 如何使用 VBA 从 Chrome 的下拉列表中选择一个选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58754971/

相关文章:

javascript - 使用 onclick 事件使用页面中的数据填充表格中的单元格

html - 有没有办法让网页以 100% 的宽度截断?

css - 在不使用 z-index 的其他 div 上 float div

html - <a> 水平对齐稍微偏离中心

css - URL 的长度会影响布局吗?

html - 从 html 输入掩码中删除行? (重力形式)

vba - 另存为 CSV 将包含公式的文件保存为#NAME?

python - 在 excel 中隐藏行不起作用 - pywin32

java - 如何每 30 分钟自动执行一次 vba 宏?

javascript - React - 向下滚动时向上滑动固定导航栏,向上滚动时向下滑动