Item in DOM found, but sourceExtract says notfound

Hello, I just found UI.Vision and it looks promising versus writing a bunch of code in Python.

I’ve done a basic macro and am doing a sourceExtract. I’m finding the object in the dom just fine, but when I run the macro, the variable is stating not found. (finding using the “find” button)

I do know that the html tags are embedded in javascript.

Overall objective is to loop through all the articles and collect the links so I can navigate to the articles and extract some information.

I’ve abreviated the source because I keep getting an error about putting more than 2 links in a post.

{
“Name”: “AuthorSearch”,
“CreationDate”: “2020-5-10”,
“Commands”: [
{
“Command”: “open”,
“Target”: “Stock Market Outlook And Analysis | Seeking Alpha”,
“Value”: “Open Market Outlook”
},
{
“Command”: “sourceExtract”,
“Target”: “xpath=//*[@id="articles-list"]/li[2]/div[2]/a”,
“Value”: “varExtract”
}
]
}

  • [info] Executing: | comment | click // id=page_content_wrapper | |
  • [info] Executing: | open | Stock Market Outlook And Analysis | Seeking Alpha | Open Market Outlook |
  • [info] Executing: | sourceExtract | xpath=//*[@id=“articles-list”]/li[2]/div[2]/a | varExtract |
  • [info] Macro completed (Runtime 6.92s)

varExtract shows #nomatchfound.

Any thoughts on why we find the dom object, but nothing in the variable?

Thanks
Bill

sourceExtract operates on the HTML source code. So it does not take a Selenium IDE locator as input. It takes either the * notation or regular expressions.

I think what you need is store text command.

Thanks for responding. storeText works great if I was looking for the display, but I actually want to navigate to the page, so I want to store the actual hyperlink, not the actual text.

Is there a way to grab the hyperlink?

Thanks

Finally answered my own question. Woo-Hoo!! Now on to loop testing.

Tried a number of commands with this regex and they all timed out
regex=<a\shref="/author/[a-zA-Z0-9_-]">@1,1 (works in Regex101)

Found storeAttribute and this does exactly what I would like it to do.

xpath=//*[@id=“articles-list”]/li[2]/div[2]/a@href