【问题标题】:Scroll down google maps webpage向下滚动谷歌地图网页
【发布时间】:2019-11-08 13:13:00
【问题描述】:

我正在尝试在谷歌地图网页上收集评论,但是我找不到向下滚动页面以获取所有评论的方法。

我正在使用 python 3 和 Selenium 包,

我找到了不同的方法来向下滚动社交媒体页面,例如 facebook 或 IG,但代码在谷歌地图上不起作用。 另外,我试图找到body标签的结束键,也没有工作。

如果有人可以提供帮助,我会很高兴,

提前谢谢你,

【问题讨论】:

    标签: python selenium web-scraping


    【解决方案1】:

    您可以使用 selenium 中的 execute_script 滚动到页面底部。

    browser = webdriver.Chrome('chromedriver.exe', options=self.browserProfile)
    brownser.get('your url here')
    browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    

    如果这没有在正确的区域滚动,您可以单击包含评论的 div,然后执行 window.scrollTo

     review_box= lambda: self.browser.find_element_by_xpath("xpath to div")
     review_box().click()
    

    希望这会有所帮助! :)

    【讨论】:

    • 您好,谢谢您的回答,对不起,我尝试了您的两种方法,但都没有奏效,
    【解决方案2】:

    使用 selenium 向下滚动的一种方法是单击页面上的特定元素。如果您执行以下操作...

    reviews_divs = driver.find_elements_by_class_name('section-review')
    reviews_divs[-1].click()
    

    ...它将点击最后一条评论并滚动到它。很好,但还不是你想要的,因为页面没有加载新的结果......

    但是,如果您单击section-review div 之后的第一个div,现在可以正确加载新评论:

    driver.find_element_by_class_name('section-loading').click()
    

    编辑

    当您登陆要测试的商店页面并点击“显示所有评论”后,上述代码将生效:

    driver.find_element_by_css_selector("button[class*='__button-text'").click()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-22
      • 1970-01-01
      • 1970-01-01
      • 2018-01-23
      • 1970-01-01
      • 2011-06-06
      • 2016-10-03
      • 2011-03-18
      相关资源
      最近更新 更多