2012-06-11 30 views
0

我嘗試使用了AutoIt從本網站獲取的一些數據鏈接:無法檢索內部框架

http://www.acgme.org/adspublic/default.asp

不幸的是,該網頁使用了框架,我有麻煩導航到頁面,數據是。

的聯繫是「認可程序」

#include <IE.au3> 

$URL="http://www.acgme.org/adspublic/" 
$MyIExplorer=_IECreate($URL,1,1,1,1) 

Local $theFrame = _IEGetObjById($MyIExplorer,"control") 
MsgBox(0,"The Frame",$theFrame.src) 

Local $oLinks = _IELinkGetCollection($theFrame) 
MsgBox(0, "Link Count", @extended & " links found") 

當我運行上面的代碼,我能夠填充$theFrame用,裏面的「認可程序」鏈接正確的幀的對象,但是這遠我可以得到。 $oLinks集合回來爲空。

回答

4

框架比較特殊。改爲使用_IEFrameGetObjByName。

#include <IE.au3> 

$URL="http://www.acgme.org/adspublic/" 
$MyIExplorer=_IECreate($URL,1,1,1,1) 

Local $theFrame = _IEFrameGetObjByName($MyIExplorer,"control") 

Local $oLinks = _IELinkGetCollection($theFrame) 
MsgBox(0, "Link Count", @extended & " links found") 
+0

謝謝@Manadar,我試過'_IEFrameGetObjByName'在一個點上,無法讓它工作。我認可這是一個AutoIt新手。我最終通過使用'_IEFrameGetCollection'來代替我的代碼。謝謝你的幫助! – Airn5475