Selenium VBA 使用 JS 路径将文本发送到 Web 元素

Selenium VBA using JS path to send text to web element

使用 Selenium VBA 使用“JS PATH”的代码。

我只有这个 HTML 有问题,因为它的结构使输入文本变得更加困难。

The HTML:
<textarea class="messenger-composer" placeholder="Say something…" style="height: 34px;">THE TEXT NEEDS TO GO HERE </textarea>

  ''Code1 with querySelector returns error ")" is missing:
    Dim Textw As String
    cScript = "document.querySelector('textarea[placeholder='Say something…']').innerHTML = '" & Textw & "'"
    bot.ExecuteScript cScript


  ''  Code2 with querySelector pastes the text in the wrong location making the HTML page corrupt.
      Dim Textw As String
      cScript = "document.querySelector('#main_content > div.notifications-footer.notifications-footer--collapsed > div.messenger > div.FullscreenOverlay-content > div > div > div > div > div > div > div.messenger-composer-wrapper ').innerHTML ='" & Textw & "'"
      bot.ExecuteScript cScript

Dim Textw As String
    cScript = "document.getElementsByClassName('messenger-composer')[0].innerHTML = '" & Textw & "'"
    bot.ExecuteScript cScript
''send key is disabled, this workaround makes it enabled.
        bot.SendKeys "a"
        bot.SendKeys bot.Keys.Backspace