【问题标题】:Scroll and read every data - python selenium滚动并读取每个数据 - python selenium
【发布时间】:2020-12-01 08:09:07
【问题描述】:

我在一个项目中滚动并获取每个人发布的每个帖子。问题是我的代码没有阅读每一篇文章(只有 2 或 3 篇并跳到下一篇)。下面是我的代码,我喜欢让我的代码能够读取每篇文章。我还尝试在滚动和滚动查看选项时更改 sleep() 持续时间和像素数,但没有改善

# scrolling and grabbing data  
            for i in range(1000):
                
                element = driver.find_element_by_xpath('//div[contains(@class, "mnk10 copy-txt")]')
                # driver.execute_script("return document.body.scrollHeight / 2",element)
                driver.execute_script("arguments[0].scrollIntoView(true)",element)
                # driver.execute_script("arguments[0].scrollBy(0, -300)",element)
                # driver.execute_script("return, document.body.scrollHeight/4",element)
                data1 = driver.find_element_by_xpath('//div[contains(@class, "mnk10 copy-txt")]').get_attribute('dat-plin-txt')
                
                print(data1)
                time.sleep(2)

【问题讨论】:

    标签: python css selenium dom scroll


    【解决方案1】:

    您可以尝试使用以下脚本部分滚动一定数量的帖子,而不是“scrollIntoView(true)”:

    driver.execute_script("arguments[0].scrollBy(0, 500)", element)
    

    您可能需要也可能不需要更改“500”部分

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-17
      • 1970-01-01
      • 2020-04-10
      • 2012-01-27
      • 2021-05-20
      • 2021-03-12
      相关资源
      最近更新 更多