如何直接通过 XPath 结果使用 Selenium RC 进行迭代?
我目前正在采取首先执行 get_xpath_count 的方法,然后创建一个循环递增索引变量,然后将其注入回原始 xpath 以选择第 n 个结果......毫无疑问,非常尴尬。
有没有一些简单、直接、优雅的方法来直接迭代 xpath 结果?
谢谢!
I'm currently resorting to first doing a get_xpath_count, and then creating a loop incrementing an index variable, which in turn I inject back into the original xpath to select the nth result... very awkward no doubt.
Is there some simple, direct, elegant way to iterate directly over the xpath results?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您的方法可能是实现目标的最简单方法,但是在 Selenium 2 (WebDriver) 中它稍微优雅一些。 Java 中的示例如下:
这会将页面上每个链接的链接文本输出到控制台。
Your approach is probably the simplest way of achieving your goal, however it's slightly more elegant in Selenium 2 (WebDriver). An example in Java is below:
This would output the link text for every link on the page to the console.
我们正在使用相同的方法。 :)
所以,如果有更好的解决方案,那么我也想看到它......但我认为不存在。
唉,如果你对这些东西评论得足够好,那就没那么糟糕了......:)
We are using the same approach. :)
So if there is a better solution then i'd like to see it too... But i don't think there is.
Alas, if you comment the stuff well enough it's not that bad... :)
我正在做的是在 C# 中使用 HtmlAgility 包并读取完整源代码并应用 xpath,然后返回一个
我可以迭代的节点列表。如果需要,您甚至可以尝试使用 linq。
我很感激我避开了硒,但当时它很方便。
What I'm doing is to use the HtmlAgility pack in c# and read in the full source and apply the xpath which then returns a nodelist
I can iterrate over. You can even try using linq if you want.
I appreciate I'm sidestepping selenium but it was convenient at the time.