Jump to content
Sign in to follow this  
uncommon

IE find a dynmic link

Recommended Posts

So I have 2 links on a webpage, the txt can be anything, the href changes too but not the domain of link. I found that this.....

For $x = 0 To 164
Local $oInputs = _IETagNameGetCollection($oIE, "a", $x)
If StringInStr($oInputs.id, "ctl00_ctl00_ctl00_ctl00_ContentMain_ContentMain_ContentMain_ContentMain_TabContainer1_DetailsTab_DetailsController1_ctl00_ParcelSummary1_TitleSection") > 0 Then $ParcelID = $oInputs.href
Next

Is a crude way to find a link but it adds unnecessary seconds to the script. Is there a better way to find find these guys on the webpage? I mean a way to do with without looping through every possible link.

I would put the source of page but its long. Here is a link to an example.

Posted Image


No problem can withstand the assault of sustained thinking.Voltaire

_Array2HTMLTable()_IEClassNameGetCollection()_IEquerySelectorAll()

Share this post


Link to post
Share on other sites

The HREF of the link is the same as the URL in the address bar.

Addressbar: http://www.ocpafl.org/Searches/ParcelSearch.aspx/PID/312214078800170

Href-Link in the page: href="/Searches/ParcelSearch.aspx/PID/312214078800170"

If you click on the link, the same page shows again.

Why not take the addressbar data?

$ParcelID = _IEPropertyGet($oIE,"locationurl")
Edited by Exit

App: Au3toCmd              UDF: _SingleScript()                             

Share this post


Link to post
Share on other sites

it appears to be a fairly simple webpage. could you get by with clicking the link by index?

it appears to be 18

_IELinkClickByIndex($oie,18)

Share this post


Link to post
Share on other sites

@exit

The normal address is http://www.ocpafl.org/Searches/ParcelSearch.aspx it happed to change to the right link because I was testing it. Assume the address bar will be http://www.ocpafl.org/Searches/ParcelSearch.aspx. Any other solutions?

@tlman12

The website it turns out is kind of dynamic. A certain amount of links will appear under conditions I cant anticipate so a parse by index wont really work unless I look at every link and filter to what I am looking for but that takes extra time.


No problem can withstand the assault of sustained thinking.Voltaire

_Array2HTMLTable()_IEClassNameGetCollection()_IEquerySelectorAll()

Share this post


Link to post
Share on other sites

#include <IE.au3>
#include <String.au3>
;   sample URL $URL = "http://www.ocpafl.org/Searches/ParcelSearch.aspx/PID/312214078800170"
$URL = "http://www.ocpafl.org/Searches/ParcelSearch.aspx"
$oIE = _IECreate($URL)
MsgBox(262144, " ", "Please navigate to the desired page and then click OK", 0)
$oID = _IEGetObjById($oIE, "ctl00_ctl00_ctl00_ctl00_ContentMain_ContentMain_ContentMain_ContentMain_TabContainer1_DetailsTab_DetailsController1_ctl00_ParcelSummary1_TitleSection")
If @error Then Exit MsgBox(262144, "Exit due to error", "Error: " & @error & " Extended: " & @extended & @LF & 'ID not found: "ctl00_ctl00_ctl00_ctl00_ContentMain_ContentMain_ContentMain_ContentMain_TabContainer1_DetailsTab_DetailsController1_ctl00_ParcelSummary1_TitleSection"', 0)
MsgBox(262144, "href string",  $oid.href)

Edited by Exit

App: Au3toCmd              UDF: _SingleScript()                             

Share this post


Link to post
Share on other sites

#include <IE.au3>
#include <String.au3>
; sample URL $URL = "http://www.ocpafl.org/Searches/ParcelSearch.aspx/PID/312214078800170"
$URL = "http://www.ocpafl.org/Searches/ParcelSearch.aspx"
$oIE = _IECreate($URL)
MsgBox(262144, " ", "Please navigate to the desired page and then click OK", 0)
$oID = _IEGetObjById($oIE, "ctl00_ctl00_ctl00_ctl00_ContentMain_ContentMain_ContentMain_ContentMain_TabContainer1_DetailsTab_DetailsController1_ctl00_ParcelSummary1_TitleSection")
If @error Then Exit MsgBox(262144, "Exit due to error", "Error: " & @error & " Extended: " & @extended & @LF & 'ID not found: "ctl00_ctl00_ctl00_ctl00_ContentMain_ContentMain_ContentMain_ContentMain_TabContainer1_DetailsTab_DetailsController1_ctl00_ParcelSummary1_TitleSection"', 0)
MsgBox(262144, "href string", $oid.href)

Ah! Never thought about doing it that way, Thanks!

No problem can withstand the assault of sustained thinking.Voltaire

_Array2HTMLTable()_IEClassNameGetCollection()_IEquerySelectorAll()

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  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Zaoka
      I'm trying to create script that would login on my SAP WEBI "web page" and replace some uploaded excel files. But i'm having problem on even the log in.
      These are user fill elements with Firefox Inspector
      <input type="text" id="_id0:logon:CMS" name="_id0:logon:CMS"> <input type="text" id="_id0:logon:USERNAME" name="_id0:logon:USERNAME"> <input type="password" id="_id0:logon:PASSWORD" name="_id0:logon:PASSWORD"> LogOnButton
      <input type="submit" id="_id0:logon:logonButton" value="Log On" class="logonButtonNoHover logon_button_no_hover" onmouseover="this.className = 'logonButtonHover logon_button_hover';" onmouseout="this.className = 'logonButtonNoHover logon_button_no_hover';">  
       
      My example, I tried _IEGetObjByName and _IEGetObjById but the script only open page but will not even fill out the form
        #include <IE.au3> Call("signIn") Func signIn() Global $oIE = _IECreate("http://192.xxx.xxx.xx:xxx/BOE/BI") Sleep (5000) Local $server = _IEGetObjByName($oIE, "_id0:logon:CMS") Local $username = _IEGetObjByName($oIE, "_id0:logon:USERNAME") Local $password = _IEGetObjByName($oIE, "_id0:logon:PASSWORD") Local $button = _IEGetObjById($oIE, "_id0:logon:logonButton") _IEFormElementSetValue($server, "TestServer:1000") _IEFormElementSetValue($username, "MyUserName") _IEFormElementSetValue($password, "MyPass") ; THIS PART ABOUT BUTTON CLICK I DONT UNDERSTAND AT ALL $sSelector = "body > div:nth-of-type(2) > div > div:nth-of-type(3) > div > table > tbody > tr > td > table > tbody > tr > td > table > tbody > tr:nth-of-type(1) > td > div > div:nth-of-type(1) > form > div:nth-of-type(5) > button" $signInUC = $oIE.document.QuerySelector($sSelector) _IEAction($signInUC, "click") EndFunc ;==>signIn  
      I would be very grateful for any help
    • By adityaparakh
      Hello ,

      A website I am trying to login with my credentials.
      And retrieve the cookie into a text file.
      Unable to do so.
      Is it that certain,  Httponly , type - are not allowed to be fetched.

      Then further ,
      I will be checking every 5 minutes if my session is active , else re-login and re-fetch the cookie.
      For the second part , I will probably fetch some table and see if not in appropriate format do Part 1 : Fetch Cookie - again.
      Any better way , tips would be appreciated.
       
      Thanks
       
    • By Jamestay97
      Hello! Thanks you for looking at my post
      **No source code I'm sorry work related can't copy information**
      I've been using autoit for about 1 year. 
      I'm having trouble automating a click on an internet explorer web page and I've tried a lot of examples from help pages and forums already. The object I'm trying to click on isnt always in the same spot so I can't use mouse click or control click, I have tried to use the different get collection options and clickbyname, or index or get object. I'm just struggling. 
      Description of object I'm trying to click -- 
      HTML Code looks like <a ng-click.. "Click Here" it appears it's just a click able object named "click here" that opens a hidden window by running a script inside the web page. I'm not able to grab the information from the window unless it's open so I have to automate this click somehow. 
       
      I understand it's difficult to assist without having something to look at, I apologize for that sincerely and appreciate and assistance and suggestions. 
    • By FUD
      hello 
      please i need help 
      i need to open link in default browser only one windows without duplicate if i try to open the same link 
       
      thanks 
×
×
  • Create New...