#javascript #vba #selenium #queryselector
Вопрос:
Использование кода Selenium VBA с использованием «ПУТИ JS».
У меня проблема только с этим конкретным HTML, потому что он структурирован таким образом, что затрудняет ввод текста.
The HTML: lt;textarea class="messenger-composer" placeholder="Say something…" style="height: 34px;"gt;THE TEXT NEEDS TO GO HERE lt;/textareagt; ''Code1 with querySelector returns error ")" is missing: Dim Textw As String cScript = "document.querySelector('textarea[placeholder='Say something…']').innerHTML = '" amp; Textw amp; "'" 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 gt; div.notifications-footer.notifications-footer--collapsed gt; div.messenger gt; div.FullscreenOverlay-content gt; div gt; div gt; div gt; div gt; div gt; div gt; div.messenger-composer-wrapper ').innerHTML ='" amp; Textw amp; "'" bot.ExecuteScript cScript
Ответ №1:
Dim Textw As String cScript = "document.getElementsByClassName('messenger-composer')[0].innerHTML = '" amp; Textw amp; "'" bot.ExecuteScript cScript ''send key is disabled, this workaround makes it enabled. bot.SendKeys "a" bot.SendKeys bot.Keys.Backspace