【问题标题】:my username and password is missing when submit it using vba for internet explorer使用 vba for internet explorer 提交时,我的用户名和密码丢失
【发布时间】:2018-03-25 01:23:12
【问题描述】:

在本网站提交时我的用户名和密码丢失:https://play.playup.com/ 此链接地址存储在单元格名称 E4 之一中,有人可以帮我解决这个问题吗?请在您的编辑器中检查此代码以更好地理解... 用户名:ajmsanvesh143@gmail.com 密码:ajms6237 代码:

Sub clicksignupurl()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
ie.Visible = True
url_name = Sheet1.Range("E4")
If url_name = "" Then Exit Sub
ie.navigate url_name
Do
DoEvents
Loop Until ie.readyState = 4
Set allhyperlinks = ie.document.getElementsByTagName("span")
    For Each hyper_link In allhyperlinks
        If hyper_link.innertext = "Sign In" Then
            hyper_link.Click
            Exit For
        End If
    Next
Set mailid = ie.document.getelementbyid("username")
mailid.Value = "xxxxxxxxx"
Set passid = ie.document.getelementbyid("password")
passid.Value = "xxxxxxx"
Set allhyper = ie.document.getElementsByTagName("button")
    For Each hyper_link In allhyper
        If hyper_link.innertext = "Sign in" Then
            hyper_link.Click
            Exit For
        End If
    Next
End Sub

【问题讨论】:

  • 我强烈建议您立即更改密码,以免为时已晚。我已将您的帖子标记为版主,希望可以编辑修订版 1。以后请小心,在任何情况下,VBA 代码都不应包含任何硬编码的凭据。
  • 我已经改过,现在用户名和密码是在特定的地方输入的。每当登录按钮通过代码输入时,它们就会丢失。我认为网页具有更高的安全性。我怎样才能避免这个问题

标签: excel vba internet-explorer webpage


【解决方案1】:

第一次点击超链接后,您无需等待新页面加载。在 Next 之后添加这一行。

...
Next

do while ie.busy or ie.readystate <> 4: DoEvents: loop  'need this!

Set mailid = ie.document.getelementbyid("username")
...

【讨论】:

  • 没问题,不需要加载任何页面。当我按下登录按钮时,会打开登录向导以输入用户名和密码。但我的问题是“在输入用户名和密码,我在相应的列中显示我的 ID 和密码,但是当我按下提交按钮时它们被删除。
猜你喜欢
  • 1970-01-01
  • 2012-05-16
  • 1970-01-01
  • 2012-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多