简体   繁体   English

如何获取产品评论,然后点击<a>评论最多的产品元素(Selenium,Java)</a>

[英]How to get product reviews and then click <a> element of product with most reviews (Selenium, Java)

<section id="135156028" data-scrolled="false" class="AdItem_adOuterHolder__Z29Nf">
     <article class="AdItem_adHolder__GL0yo">
         <a class="Link_link__J4Qd8 Link_inherit___qXEP" target="_self" id="" rel="" role="button" 
                   tabindex="-1" href=".." style="align-items: flex-start;">
             <div class="AdItem_imageHolder__DYGd_" style="max-width: 128px; min-width: 128px; height:                                                              
                         120px;">
                 <img src="...">
             </div>
         </a>
         <div class="AdItem_descriptionHolder__xnkD4">
             <div class="AdItem_adInfoHolder___36KR"></div>
             <div class="AdItem_price__k0rQn">650 din</div>
             <div>
                  <div class="AdItem_viewAndFavorite__pjskf">
                      <div class="AdItem_favoriteHolder__bKBRE">
                          <svg width="16" height="16" viewBox="0 0 16 16" fill="none" 
                               xmlns="http://www.w3.org/2000/svg" class="asIcon_greyStroke__NU1Xe  
                               asIcon_svg__Zm34q">
                          </svg>
                          <span class="AdItem_count__iNDqG">**144**</span>
                       </div>
                       <div class="AdItem_favoriteHolder__bKBRE">
                           <svg width="16" height="16" viewBox="0 0 16 16" fill="none" 
                                xmlns="http://www.w3.org/2000/svg" class="asIcon_greyStroke__NU1Xe 
                                asIcon_svg__Zm34q">
                           </svg>
                           <span class="AdItem_count__iNDqG">13</span>
                      </div>
                   </div>
                   <div class="AdItem_postedStatus__C6vfK">...</div>
              </div>
         </div>
      </article>
 </section>

This is the code, I deleted some unnecessary thing, but in case I deleted some importat part of the code, link is here: [https://novi.kupujemprodajem.com/mama-i-beba/oprema-za-hranjenje-i-dojenje/grupa/18/2473/1].这是代码,我删除了一些不必要的东西,但如果我删除了代码的一些重要部分,链接在这里:[https://novi.kupujemprodajem.com/mama-i-beba/oprema-za-hranjenje- i-dojenje/grupa/18/2473/1]。 I took random product to share code, not the product with most views, but what I want to do is to get views count from here: "xpath = "//div[@class='AdItem_viewAndFavorite__pjskf']//div[1]", to check which product has highest number, and then I want to click on element of that product. I'm newbie, and I don't know how to connect those, and I didn't find any solutions on the inte.net.我拿了随机产品来分享代码,而不是浏览量最多的产品,但我想做的是从这里获取浏览量:"xpath = "//div[@class='AdItem_viewAndFavorite__pjskf']//div[1] “,检查哪个产品的数量最多,然后我想点击那个产品的元素。我是新手,我不知道如何连接这些,我在互联网上没有找到任何解决方案。网。

I tried something like this:我试过这样的事情:

@FindBy(xpath = "//div[@class='AdItem_name__BppRQ']")
    List<WebElement> productsList;
@FindBy(xpath = "//div[@class='AdItem_viewAndFavorite__pjskf']//div[1]")
    List<WebElement> productViewsList;   

public SingleProductPage chooseHighestViewsProduct(){

   String productName;
   String productViews;
   int numberOfViews;
    
   HashMap<Integer,String> mapFinalProducts = new HashMap<Integer, String>();
        for (int i=0;i<productsList.size();i++){
            productName = productsList.get(i).getText();
            productViews = productViewsList.get(i).getText();
            numberOfViews = Integer.parseInt(productViews);
            mapFinalProducts.put(numberOfViews, productName);
        }
   Set<Integer> allKeys = mapFinalProducts.keySet();
   ArrayList<Integer> listOfProductValues = new ArrayList<Integer>(allKeys);
   Collections.sort(listOfProductValues);
   int highestViews = listOfProductValues.get(listOfProductValues.size()-1);
}

This way I get the product with most views, but because that span is not clickable, I don't know how to click on its link.通过这种方式我得到了浏览量最多的产品,但是因为那个 span 是不可点击的,所以我不知道如何点击它的链接。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何 select 产品评论最多的产品 - How to select the product with the most product reviews 从亚马逊检索产品信息和产品评论 - Retrieve product information and product reviews from amazon Android Java Google Places GET(拉出)评论JSONException没有评论的值 - Android Java Google Places GET (Pull) Reviews JSONException No value for reviews 网站/屏幕在网上刮刮了以bazaarvoice / bv为来源的产品评论? - web/screen scrape product reviews online with bazaarvoice/bv as source? Selenium Webdriver-Java-如何根据产品单击复选框 - Selenium Webdriver - Java - How to click checkbox based on product 如何使用 Selenium 和 Java 针对产品列表中的产品单击特定的“添加到购物车”按钮 - How to click a specific 'Add to cart' button with respect to a product from product list using Selenium and Java 如何获取 Selenium 文本但当产品有折扣元素更改时 - How to get Selenium Text But When Product Has Discount Element Changes Java Selenium单击获取元素 - Java Selenium Get Element for Click 如何获得有关定制Eclipse产品的Java观点 - How to get Java perspective on custom Eclipse product 如何单击所有产品链接,搜索元素并返回。 - How to Click at all product links, search an element and navigate back.
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM