Как заполнить форму веб-страницы с помощью VB6 - PullRequest
0 голосов
/ 09 ноября 2019

Я хотел бы заполнить веб-страницу формы входа с помощью VB6. Я использую следующий код:

Dim IE As InternetExplorer   
Dim HTMLDoc As HTMLDocument  
Dim COL As MSHTML.IHTMLElementCollection
Dim ELEMENT As MSHTML.HTMLInputElement

Set IE = New InternetExplorer

IE.Visible = True
IE.Navigate "https://app.listonic.com/lists"

Do
    DoEvents
Loop Until IE.ReadyState = READYSTATE_COMPLETE

Set HTMLDoc = IE.Document
Set COL = HTMLDoc.getElementsByTagName("a")

For Each ELEMENT In COL
    If ELEMENT.innerHTML = "Sign In" Then ELEMENT.Click
Next ELEMENT

Do
    DoEvents
Loop Until IE.ReadyState = READYSTATE_COMPLETE

Set COL = HTMLDoc.getElementsByTagName("input")

For Each ELEMENT In COL
    Debug.Print "Inner HTML - " & ELEMENT.innerHTML
    Debug.Print "Outer HTML - " & ELEMENT.outerHTML
    Debug.Print ELEMENT.getAttribute("name")

    If ELEMENT.getAttribute("name") = "Email" Then
        Call ELEMENT.setAttribute("Value", "yourid@server.com")
    End If
    'If ELEMENT.innerHTML = "Sign In" Then ELEMENT.Click
Next ELEMENT

Проблема в том, что этот код:

Call ELEMENT.setAttribute("Value", "yourid@server.com")

не работает. Под этим я подразумеваю, что не вижу адрес «yourid@server.com» на веб-странице в поле «Электронная почта».

Что я делаю неправильно?

1 Ответ

0 голосов
/ 10 ноября 2019

ОК, я что-то нашел. вместо этого:

Call ELEMENT.setAttribute("Value", "yourid@server.com")

Я поставил это:

ELEMENT.Value = "yourid@server.com"

Это поместило адрес электронной почты в поле "Электронная почта", но Я не могу нажать кнопку "Войти", поскольку отключено на странице. Он включается, когда я вручную что-то набираю в полях «Электронная почта» и «Пароль» (разумеется, я также заполнил поле пароля).

Есть ли какие-либо советы о том, как включить «Вход» из кода vb6?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...