【问题标题】:Python Selenium-webdriver: click on all full review buttons when page loadedPython Selenium-webdriver:页面加载时点击所有完整的评论按钮
【发布时间】:2020-10-05 18:56:21
【问题描述】:

我正在尝试从 Google Play 商店检索有关该应用的信息(包括评论)。有些评论很短,有些评论很长,并且有完整的评论按钮。当页面加载到浏览器上时,我想执行点击命令,以便它点击评论的所有评论按钮(如果有的话),然后开始从页面中提取信息。这是我的代码:

baseurl='https://play.google.com/store/apps/details?id=com.zihua.android.mytracks&hl=en&showAllReviews=true'
driver.get(baseurl)

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='d15Mdf bAhLNe']//div[@class='cQj82c']/button[text()="Full Review"]"))).click()

person_info = driver.find_elements_by_xpath("//div[@class='d15Mdf bAhLNe']")
for person in person_info:
    review_response_person = ''
    response_date = ''
    response_text = ''

    name = person.find_element_by_xpath(".//span[@class='X43Kjb']").text
    review = person.find_element_by_xpath(".//div[@class='UD7Dzf']/span").text

但是,程序在代码的第三行抛出以下错误(即 WebDriverWait(driver,10)):

ElementClickInterceptedException: Message: element click intercepted: Element <button class="LkLjZd ScJHi OzU4dc  " jsaction="click:TiglPc" jsname="gxjVle">...</button> is not clickable at point (380, 10). Other element would receive the click: <a href="/store/apps" class="L9ZZW uJjCzb">...</a>

谁能指导我如何解决这个问题?

【问题讨论】:

    标签: python python-3.x selenium selenium-webdriver


    【解决方案1】:

    看起来完整评论位于可见修剪评论 (jsname="fbQN7e") 下方的跨度内,因此您可以执行此类操作

    driver.get("https://play.google.com/store/apps/details?id=com.zihua.android.mytracks&hl=en&showAllReviews=true")
    reviews = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.XPATH, "//div[@jsname='fk8dgd']"))
    )
    for review in reviews.find_elements(By.CSS_SELECTOR, "div[jscontroller='H6eOGe']"):
        reviewText = review.find_element(By.CSS_SELECTOR, "span[jsname='fbQN7e']")
        print(reviewText.get_attribute("innerHTML"))
    

    但是,这可能只会返回一条评论,您需要将页面向下滚动到底部,以便将它们全部加载进来。other answers 提供了很好的示例来说明如何做到这一点。添加后,它将遍历每个完整的评论,而无需单击按钮来展开。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-15
      • 2014-06-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多