Excel vba Перевести IE. Документ пуст - PullRequest
0 голосов
/ 13 февраля 2019

Это скрипт VBA, который я использую для перевода полей в лист исключений.Проблема в том, что у меня скрипт работает около 2- 3 месяцев назад, но теперь IE.Document после перевода пуст.На странице есть правильный перевод, но я не могу получить результат в моем листе Excel

inputstring = "en"
outputstring = "da"
text_to_convert = str

'open website

IE.Visible = True
IE.navigate "https://translate.google.com/#" & inputstring & "/" & outputstring & "/" & text_to_convert

Do Until IE.ReadyState = 4
    DoEvents
Loop

Application.Wait (Now + TimeValue("0:00:4"))

Do Until IE.ReadyState = 4
    DoEvents
Loop
test = IE.Document.getElementById("result_box")

1 Ответ

0 голосов
/ 13 февраля 2019

Используйте правильное ожидание страницы.Я также использую другой селектор элементов

Option Explicit
Public Sub GetTranslation()
    Dim ie As New InternetExplorer, ws As Worksheet
    Dim inputString As String, outputString As String, text_to_convert As String, translation As String
    inputString = "en"
    outputString = "da"
    text_to_convert = "Banana"
    Set ws = ThisWorkbook.Worksheets("Sheet1")

    With ie
        .Visible = True
        .Navigate2 "https://translate.google.com/#" & inputString & "/" & outputString & "/" & text_to_convert
        While .Busy Or .readyState < 4: DoEvents: Wend
        translation = ie.document.querySelector(".translation").innerText
        ws.Cells(1, 1) = translation
        .Quit
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...