【问题标题】:How to handle the ratings within bubble rating widget with in Tripadvisor?如何在 Tripadvisor 处理气泡评分小部件中的评分?
【发布时间】:2020-02-07 11:23:43
【问题描述】:

我有一个场景,我需要在tripadvisor 中单击气泡评级小部件的第五个气泡

HTML代码是:

<span id="bubble_rating" class="ui_bubble_rating fl bubble_10" data-value="1" onclick="ta.userreview.common.trackFieldFocus(this); ">
<img src="https://static.tacdn.com/img2/x.gif" alt="Roll over, then click to rate">
</span>

我正在尝试使用以下代码 sn-p:

Actions action = new Actions(driver);
WebElement element = driver.findElement(By.xpath("//span[@id='bubble_rating']"));
action.moveToElement(element).perform();

此代码仅悬停在前 3 个气泡上,其余第 4、5 个气泡未被点击。

【问题讨论】:

    标签: java selenium tripadvisor


    【解决方案1】:

    要使用Seleniumhttps://www.tripadvisor.in/Bubble Rating 小部件中点击所有5 星评级,您必须诱导WebDriverWait对于visibilityOfElementLocated(),您可以使用以下任一Locator Strategies

    • cssSelector:

      driver.get("https://www.tripadvisor.in/UserReviewEdit-g641714-d1156207-Club_Mahindra_Madikeri_Coorg-Madikeri_Kodagu_Coorg_Karnataka.html]");
      new Actions(driver).moveToElement(new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("span#bubble_rating"))), 50, 0).click().build().perform();
      
    • xpath:

      driver.get("https://www.tripadvisor.in/UserReviewEdit-g641714-d1156207-Club_Mahindra_Madikeri_Coorg-Madikeri_Kodagu_Coorg_Karnataka.html]");
      new Actions(driver).moveToElement(new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//span[@id='bubble_rating']"))), 50, 0).click().build().perform();
      
    • 浏览器快照:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-10
      • 2015-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-29
      • 1970-01-01
      • 2021-10-14
      相关资源
      最近更新 更多