Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.2k views
in Technique[技术] by (71.8m points)

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)

question from:https://stackoverflow.com/questions/65857914/excel-vba-selenium-find-element

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

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')]")
    

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...