Search code examples
excelselenium-webdriverxpathcss-selectorslinktext

excel vba - Selenium Find Element


I'm using Selenium to do some webscraping.

I always struggle with finding elements when Name or ID isn't an options.

The page is https://www.portfolio123.com/holdings.jsp?portid=1637063

And I'm trying to find the log in button. the element looks like: enter image description here

I've tried

FindElementByClass("btn-primary btn-sm", 10000)

FindElementsByLinkText("Log In", 10000)

FindElementByXPath("//div[@class='btn btn-primary btn-sm']//[@href='javascript:void(goToLoginPage())")

But without any success (I suspect I need to use XPath, but I can't seem to get it right

Any help please? (and if you could explain how to figure this out, so I don't have the issues in future that would be really appreciated)


Solution

  • To locate the element Log In you can use either of the following Locator Strategies:

    • Using FindElementByLinkText:

      FindElementByLinkText("Log In")
      
    • Using FindElementByCss:

      FindElementByCss("a[href*='goToLoginPage']")
      
    • Using FindElementByXPath:

      FindElementByXPath("//a[contains(@href, 'goToLoginPage')]")