如何查找Google搜索结果中的链接

时间:2018-03-14 08:08:36

标签: selenium xpath selenium-webdriver automation webdriver

情景:

  1. 打开" google.co.in"。
  2. 点击搜索输入框。
  3. 输入内容。
  4. 点击Enter。
  5. 获取所有链接的文字。
  6. 某些链接的xpath是:

    • .//*[@id='rso']/div[2]/div/div[2]/div/div/h3/a
    • .//*[@id='rso']/div[2]/div/div[3]/div/div/h3/a
    • .//*[@id='rso']/div[2]/div/div[4]/div/div/h3/a
    • .//*[@id='rso']/div[2]/div/div[5]/div/div/h3/a
    • .//*[@id='rso']/div[2]/div/div[6]/div/div/h3/a

    所有xpath都具有相同的模式。第三个div需要增加1才能获得下一个xpath。我已经在某处看过,在这种情况下可以使用这种通用的xpath。根据他的建议,xpath将为".//*[@id='rso']/div[2]/div/div/div/div/h3/a"。刚刚删除了第三个div的谓词。这不起作用。这是定位元素的方法吗?

1 个答案:

答案 0 :(得分:2)

您可以尝试以下XPath来获取所有结果链接:

//div[@class="g"]//h3/a

如果你想避免来自"人们也要问"阻止:

//div[@class="g"]//h3/a[not(ancestor::div[@class="_OKe"])]