嗨,我是VBA的新手,我嘗試使用VBA自動登錄到網頁,並且我成功了幾個網站,但對於這個特定的網頁我很無法做到這一點VBA - 如何輸入用戶名,密碼,然後點擊網頁上的提交按鈕
下面是我的VBA代碼:
Sub login()
Set IE = CreateObject("InternetExplorer.application")
IE.AddressBar = 0
IE.StatusBar = 0
IE.Toolbar = 0
IE.Visible = True
IE.navigate "www.sample.com"
Do Until Not IE.busy: DoEvents: Loop
Set doc = IE.document
Do While doc.ReadyState <> "complete": DoEvents: Loop
IE.document.all("ocsid").Value = "xx"
IE.document.all("password").Value = "yy"
IE.document.all("Submit").Click
End Sub
下面是我從網頁
</TR>
<TR>
<TD width="165"><FONT FACE="Arial, Helvetica" SIZE=2><b>OCS Id:</b></FONT></TD>
<TD align="center" width="95"><INPUT size="15" type="text" maxlength="10" name="ocsid"></TD>
</TR>
<TR>
<TD width="165"><FONT FACE="Arial, Helvetica" SIZE=2><b>OCS Password</b></FONT>:</TD>
<TD align="center" width="95"><INPUT size="15" type="password" maxlength="8" name="password"></TD>
</TR>
<TR>
<TD width="165"><FONT FACE="Arial, Helvetica" SIZE=2><b>X500 Id:</b></FONT></TD>
<TD align="center" width="95"><INPUT size="15" type="text" maxlength="10" name="x500id"></TD>
</TR>
<TR>
<TD height="15" width="165"></TD>
<TD width="95"></TD>
</TR>
<TR>
<TD align="center" width="165" colspan="2"><INPUT type="checkbox" name="changePasswordBox" onclick="changePassword2();" />
<FONT FACE="Arial, Helvetica" SIZE=2><b>Change Password</b></FONT></TD>
</TR>
</TABLE>
<div id="HideArea" >
<TABLE width="287">
<TR>
<TD width="165"><FONT FACE="Arial, Helvetica" SIZE=2><b>New Password:</b></FONT></TD>
<TD align="center" width="95"><INPUT size="15" type="password" maxlength="8" name="newpassword"></TD>
</TR>
<TR>
<TD width="165"><FONT FACE="Arial, Helvetica" SIZE=2><b>Verify New Password:</b></FONT></TD>
<TD align="center" width="95"><INPUT size="15" type="password" maxlength="8" name="VERIFY_NEW_PWD" ></TD>
</TR>
<TR>
</TABLE>
</div>
<TABLE width="287">
<TR>
<TD height="15" width="165"></TD>
<TD width="95"></TD>
</TR>
<TR>
<TD colspan="2" align="center"><input type="submit" name="Submit" value="Submit" onclick="if (top.frames[0] && top.frames[0].animate) top.frames[0].animate.start();" style="width: 60px">
<INPUT style="width: 60px" type="button" name="Reset" value="Reset" onClick="resetPage();"></TD>
</TR>
我希望這WIL複製的登錄區的HTML代碼我幫你回答我的問題!
評論: - 我很抱歉!我不明白你在問什麼?但我只是發現了一些東西,當我使用Chrome瀏覽器右鍵單擊頁面時,它會給出一個額外的選項作爲「查看幀源」,通常所有其他網站,我成功地自動化上述過程將只有一個選項爲「查看頁面源「使用我將找到」ID「和」標籤「等....當我點擊」查看頁面源「選項時,我沒有看到任何」ID「和」標籤「,而我只有鏈接以.jsp格式結尾,當我點擊鏈接時,它會將我帶到網頁的某個部分(如登錄區域)(法律聲明和隱私政策)....我不確定這是否會對您有所幫助!但我真的很抱歉,我非常感謝你的工作!
功能的代碼產生一個錯誤?如果是這樣,在哪裏?什麼是實際的網站(我假設www.sample.com是不是)?鑑於它可以在一些網站上運行,但不能在一個特定的網站上運行,意味着該網站的設置可能會有所不同... – rohrl77
是的,它確實給了我一個錯誤「運行時錯誤 - 424對象需要」,並且這一步發生在這一步IE.document.all(「ocsid」)。Value =「xx」)!!!我很抱歉該網站是保密的,我不會分享它的位置!是的,這個網站的設計是不同的,其他網站在標籤中會有「ID」或「Class」,但這不是!所以我卡住了! – David
如果不能根據實際場地進行測試,任何建議都只能抓住吸管。 –