Sign in to follow this  
Followers 0
Mercury049

Help with embedded frames/links needed

6 posts in this topic

Thanks in advance for any assistance!

I'm struggling. When I pull open a page in Yahoo, I have NO trouble pulling together a list of links that are on that page.

But on this third party order form site, I am really struggling. I figured it was because of the frames. But I've tinkered with the finding the frames and I have been successful with pulling links from frames on our intranet.

Where I am struggling is with multiple nested frames. I pulled down the IE Developer Toolbar from MS to view the hierarchy. I guess what I don't understand is how to get down into all of these levels of frames/tables to get to the links contained within. I'm stumbling through most of the _IE functions but cannot seem to get it working. I'm putting a screenshot of the html of that page layout so you can see what I'm talking about. The highlighted line is one of the links I need to read the info from. The picture is attached.

Thanks for reading.

post-39863-1234817469_thumb.jpg

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Assuming you've used $oIE = _IECreate() to get to that point...

Try:

$oFrame = _IEFrameGetCollection($oIE, 3)
$oTable = _IETableGetCollection ($oFrame)
$iNumTables = @extended
For $x = 1 to $iNumTables
    $oTable = _IETableGetCollection ($oFrame, $x)
    $aTableData = _IETableWriteToArray ($oTable, True)
    _ArrayDisplay($aTableData)
Next

And I guess I don't know how different they are, but I like DebugBar quite a bit. :)

Edited by exodius

Share this post


Link to post
Share on other sites

Assuming you've used $oIE = _IECreate() to get to that point...

Try:

$oFrame = _IEFrameGetCollection($oIE, 3)
$oTable = _IETableGetCollection ($oFrame)
$iNumTables = @extended
For $x = 1 to $iNumTables
    $oTable = _IETableGetCollection ($oFrame, $x)
    $aTableData = _IETableWriteToArray ($oTable, True)
    _ArrayDisplay($aTableData)
Next

And I guess I don't know how different they are, but I like DebugBar quite a bit. :)

I tried that previously. But I get the following back from Debug on Scite.

--> IE.au3 V2.4-0 Warning from function _IEFrameGetCollection, $_IEStatus_NoMatch

--> IE.au3 V2.4-0 Error from function _IETableGetCollection, $_IEStatus_InvalidDataType

--> IE.au3 V2.4-0 Error from function _IETableGetCollection, $_IEStatus_InvalidDataType

--> IE.au3 V2.4-0 Error from function _IETableWriteToArray, $_IEStatus_InvalidDataType

Even if I change it to $oFrame = _IEFrameGetCollection($oIE, 2) I have problems

I think it's something jacked up with the frames. When I even try to just6 use the _IEFrameGetCollection example on this site, I get problems. I don't get problems like this on other sites. Below is the error that generates when I try the example on this site.

C:\Program Files\AutoIt3\Include\IE.au3 (3140) : ==> The requested action with this object has failed.:

Return $o_object.location.href()

Return $o_object.location.href()^ ERROR

->16:10:56 AutoIT3.exe ended.rc:1

Share this post


Link to post
Share on other sites

The site you're trying to read isn't using active server pages is it? (the address bar ends in .asp)... I'm having pretty much the exact same issue with a page that is in asp and I'm still trying to figure out how to work through it.

Share this post


Link to post
Share on other sites

The site you're trying to read isn't using active server pages is it? (the address bar ends in .asp)... I'm having pretty much the exact same issue with a page that is in asp and I'm still trying to figure out how to work through it.

Yep, it is. All ASP and Javascript. It's good to know I'm not the only one struggling with this as I've put some real time into trying to figure it out. Maybe someone else on here will be able to point us in the right direction.

Share this post


Link to post
Share on other sites

*bump* but in addition, does anyone know how to return an object reference from a FORM in IE that is NOT named?

Thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0