如何在没有超链接的情况下导航到超链接所在的页面?

时间:2017-01-25 02:12:46

标签: javascript html angularjs xpath web-scraping

我正在尝试使用网页抓取数据' XPath的。但是,我很难导航到链接所在的页面,因为它使用了 AngularJS的ng-click 指令。基于this link,它在单击时评估表达式。在我试图抓取的页面中,它使用以下代码。

<a l-translate="view all" ng-click="tabsSwitching('downloads')" class="ng-isolate-scope">view all</a>

如果我的理解是正确的,上面的锚点试图调用javascript方法转到下载选项卡。如果是这样,有没有办法通过xpath转到下载选项卡?或者有更好的方法吗?非常感谢你。

2 个答案:

答案 0 :(得分:2)

这是点击元素的javascript脚本:

document.evaluate("//a[text()='view all']", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.click();

答案 1 :(得分:1)

您可以通过获取元素并单击它来导航到该链接。如果没有提到锚标记的href值,则没有其他方法可以获取它。

所以你可以试试这个:

Driver.findElement(By.xpath("//a[text()='view all']")).click();