无法检索Frame内的链接

时间:2012-06-11 15:01:29

标签: autoit

我正在尝试使用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")

当我运行上面的代码时,我能够使用包含“Accredited Programs”链接的正确框架对象填充$theFrame,但这是我能得到的。 $oLinks集合返回空白。

1 个答案:

答案 0 :(得分: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")