使用VBA在网页中填写用户名和密码 [英] Fill user name and password in a webpage using VBA

查看:46
本文介绍了使用VBA在网页中填写用户名和密码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我第一次尝试通过 VBA 浏览 IE 浏览器.我在尝试着:- 转到此网页 https://hb2.bankleumi.co.il/e/Login.html- 填写用户名- 填写密码- 点击登录"按钮现在我收到错误对象'IWebBrowser2'的方法'文档'失败"

This is my first try to navigate a IE browser through VBA. I am trying to: - go to this webpage https://hb2.bankleumi.co.il/e/Login.html - fill in the username - fill the password - click the "login" button for now I'm getting the error "Method 'Document' of object 'IWebBrowser2' failed"

我试图检查网页的 html 代码中的元素并找到它们的 id,但我想我在调用方法或接近对象时犯了一些错误.

I tried to inspect the elements in the html code of the webpage and found their ids but I suppose I'm making some mistake in invoking the methods or approaching the object.

我的代码是:

Option Explicit
Sub dataFromLeumi()
    Dim myPassword As String
    myPassword = "somepassword"
    Dim myUserName As String
    myUserName = "someusername"



    Dim loginPath As String
    loginPath = "https://hb2.bankleumi.co.il/e/Login.html"
    Dim IE As Object
    Set IE = CreateObject("InternetExplorer.application")
    IE.Visible = True
    IE.navigate loginPath

    Dim userName As Object
    Set userName = IE.document.getattribute("uid")
    userName.Item(0).Value = myUserName

    Dim password As Object
    password = IE.document.getelementbyid("password")
    password.Item(0).Value = myPassword


    IE.document.getelementbyid("enter").Click
End Sub

我应该在代码中更改什么?我错过了什么?

What should I change in my code? What do I miss out?

谢谢!

推荐答案

试试这个

Sub test()
' open IE, navigate to the desired page and loop until fully loaded
    Set ie = CreateObject("InternetExplorer.Application")
    my_url = "https://hb2.bankleumi.co.il/e/Login.html"

    With ie
        .Visible = True
        .Navigate my_url
        .Top = 50
        .Left = 530
        .Height = 400
        .Width = 400

    Do Until Not ie.Busy And ie.readyState = 4
        DoEvents
    Loop

    End With

' Input the userid and password
    ie.Document.getElementById("uid").Value = "testID"
    ie.Document.getElementById("password").Value = "testPW"

' Click the "Search" button
    ie.Document.getElementById("enter").Click

    Do Until Not ie.Busy And ie.readyState = 4
        DoEvents
    Loop
End Sub

这篇关于使用VBA在网页中填写用户名和密码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆