元素的HTML:
<div _ngcontent-nxg-c15="" class="box-shadow"><!----><a _ngcontent-nxg-c15="" class="clearfix con-card-voucher text-center ng-star-inserted" style="background-image: url("https://api.duniagames.co.id/api/product/upload/image/9231439531578882989.jpg");" href="/top-up/item/freefire"><!----><img _ngcontent-nxg-c15="" alt="Item Logo" class="icon-image style2" onerror="this.onerror=null;this.src='./assets/images/primary-logo.jpg';" src="https://api.duniagames.co.id/api/product/upload/image/13838880871566571420.jpg"><div _ngcontent-nxg-c15="" class="right style2"><h5 _ngcontent-nxg-c15="" class="title"><b _ngcontent-nxg-c15="">FreeFire</b></h5></div></a><!----></div>
我以前使用的编码是这样,但是失败了
Driver.FindElement(By.LinkText("FreeFire")).Click()
如何正确编码我使用VB.Net
所需的元素是Angular元素,您需要诱发一些wait,并且可以使用以下Locator Strategies之一:
使用FindElementByCss
:
Driver.wait 3000
Driver.FindElementByCss("div.box-shadow a[href='/top-up/item/freefire'] h5.title>b").Click
使用FindElementByXPath
:
Driver.wait 3000
Driver.FindElementByXPath("//h5[@class='title']/b[text()='FreeFire']").Click
您可以在以下位置找到相关的讨论: