0
你好,并提前感谢您的时间。将域添加到使用VBScript自动登录的用户名
我正在尝试使用VBscript自动化特定网站的登录。我的代码工作很好......达到某一点。我执行脚本,它会打开IE,填充用户名和密码,然后提交。问题是,在提交凭据后,我收到一个错误消息,说用户名和/或密码不正确。我知道100%用户名和密码实际上是正确的。
我很肯定我找到了罪魁祸首,但我无法弄清楚我应该如何修改我的代码以适应。用萤火虫查看登入画面后,发现有一个域名被追加到使用者名称上。我的代码没有反映这一点,因此我提交后出现用户名/密码错误。
这里是我的代码...以下我的代码是JavaScript从网站使用Firebug拉:
On Error Resume Next
Const PAGE_LOADED = 4
Set objIE = CreateObject("InternetExplorer.Application")
Call objIE.Navigate("https://snvacaid-bwxsp01.megapathvoice.com/Login/")
objIE.Visible = True
Do Until objIE.ReadyState = PAGE_LOADED : Call WScript.Sleep(100) :
Loop
objIE.Document.loginForm.EnteredUserID.Value = "username"
objIE.Document.all.Password.Value = "password"
If Err.Number <> 0 Then
msgbox "Error: " & err.Description
End If
Call objIE.Document.all.loginForm.submit
Set objIE = Nothing
从网站上的JavaScript:
function submitForm() {
//append domain to the userId if it is available and not
//already contained in the userId
var userId = document.loginForm.EnteredUserID.value;
var domain = document.loginForm.domain.value;
document.loginForm.UserID.value = userId;
if ((userId.indexOf("@") == -1) && (domain != "")){
document.loginForm.UserID.value = userId + "@" + domain;
}
document.loginForm.submit();
}
看起来他们正在将域名添加到您的用户名,如果它不存在使用JavaScript函数。只需在您的vb脚本中以“username @ domain”的形式提供用户名即可解决此问题。 – Arun
谢谢你的建议,但它不起作用。 – AngryNinja
你尝试过“domain \ userId”吗? – PatricK