ednrd.ae/portal/pls/portal/...

ичок Я пытался, но не смог получить ответ веб-страницы при использовании метода публикации xmlhttprequest. Я пытаюсь заполнить веб-форму с помощью файла Excel, создав строку запроса, но она не работает. Я не знаю, правильна ли строка запроса, и не знаю, как ввести капчу? Значение капчи можно увидеть, проверив элемент. Я буду благодарен, если кто-то может помочь. Большое спасибо заранее.

План файла Excel:

Cells(2,3)         Cells(2,4)      Cells(2,5)  Cells(2,6)          Cells(2,7)      Cells(2,8)
p_qry_no           p_firstname     p_gender    p_nationality       p_dob           Captcha
20120087048131     Annaliza        2           237                 17-04-1978      <img src="/portal/pls/portal/inimm_db.DBPK_CAPTCHA.GenerateCaptcha?randomValue=7732517">

Мой код выглядит следующим образом:

Option Explicit
Public Sub GetData()
    Dim res As Variant, QueryString As String, i As Long

    Dim p_qry_no As Long, p_firstname As String, p_gender As Long, p_nationality As Long, p_dob As String

    Dim sht As Worksheet, lastRow As Long
    Set sht = ThisWorkbook.sheets("Visa")

    With sht
        lastRow = .Cells(.Rows.Count, "C").End(xlUp).Row
    End With

    For i = 2 To lastRow

'p_qry_no: 20120087048131
'p_qry_type: 2
'p_firstname: Annaliza
'p_gender: 2
'p_nationality: 237
'p_dob: 17-04-1978

       QueryString = "{""p_qry_no"":""" & sht.Cells(i, 3) & """,""p_qry_type"":""2"",""p_firstname"":""" & sht.Cells(i, 4) & """,""p_gender"":""" & sht.Cells(i, 5) & """,""p_nationality"":""" & sht.Cells(i, 6) & """,""p_dob"":""" & sht.Cells(i, 7) & """}"

        With New XMLHTTP60
            .Open "POST", "http://ednrd.ae/portal/pls/portal/INIMM_DB.DBPK_VISAVALIDITY.PROCESS_QUERY_STATUS_REDIR", False
            .setRequestHeader "User-Agent", "Mozilla/5.0"
            .setRequestHeader "Content-Type", "application/json"
            .send QueryString
            res = .responseText
            Debug.Print res
        End With
        sht.Cells(i, 8) = res
    Next i
End Sub

Ответы на вопрос(0)

Ваш ответ на вопрос