標題:
Vba控制網頁
[打印本頁]
作者:
reangame
時間:
2017-6-9 15:04
標題:
Vba控制網頁
想使用Vba控制網頁,查到一個按鍵的原始碼為下列:
<button onclick="javascript:checkID();">確認</button>
造成無法自動點選,請問大大該如何處理?
作者:
reangame
時間:
2017-6-10 18:52
請問有大大能夠幫忙回答一下嗎?拜託拜託
作者:
VBALearner
時間:
2017-6-11 12:53
回復
2#
reangame
我不是很清楚VBA可不可以處理這個狀況...
依我寫爬蟲的經驗...可能.......用Chrome的開發人員工具去了解一下javascript的函數checkID()是甚麼內容,通常會有組成url字串的程式,按照其程式邏輯用VBA湊出參數再送POST
建議網址貼上來,好方便大家研究
作者:
Joforn
時間:
2017-6-11 17:15
webbrowser1.Document.parentWindow.execScript "checkID();", "JavaScript"
作者:
Joforn
時間:
2017-6-11 17:48
由checkID這個名稱猜測,這個代碼僅僅檢測了輸入的ID是否正確,猜測樓主想要的效果是自動提交表單?如果是,那麼上面的代碼可能達不到要求。
作者:
reangame
時間:
2017-6-16 23:58
回復
3#
VBALearner
不好意思,因為是內部網路,無法提供網址,感謝您的回答。
作者:
reangame
時間:
2017-6-17 00:04
本帖最後由 reangame 於 2017-6-17 00:08 編輯
由checkID這個名稱猜測,這個代碼僅僅檢測了輸入的ID是否正確,猜測樓主想要的效果是自動提交表單?如果是, ...
Joforn 發表於 2017-6-11 17:48
其實我只是要做一個很簡單的登入動作而已,之前沒問題,可是最近改版後就無法登入了,
程式碼寫法跟下面的一樣:
1: Sub login()
2: Dim loginID As String
3: Dim loginPW As String
4: loginID = "myid"
5: loginPW = "mypw"
6:
7: Dim ie As InternetExplorer
8: Dim doc As HTMLDocument
9: Dim element As IHTMLElementCollection
10: Set ie = CreateObject("InternetExplorer.Application")
11: ie.navigate ("http://www.saveonbook.com/post/post.jsp?active=0")
12: ie.Visible = True
13: Do Until ie.readyState = READYSTATE_COMPLETE
14: DoEvents
15: Loop
16: Set doc = ie.document
17: Set element = doc.getElementsByName("LoginPA")
18: element.Item(0).Value = loginID
19: Set element = doc.getElementsByName("PasswordPA")
20: element.Item(0).Value = loginPW
21: Set element = doc.getElementsByName("img23")
22: element.Item(0).Click
23: End Sub
複製代碼
錯誤點就是在程式碼點擊登入的地方第22行,因為找不到按鍵ID了,查看按鍵網頁原始碼才發現變成javascript checkID()
請問有甚麼解決方式嗎?
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)