使用 Selenium Python 滚动到底部

sul*_*lfc 5 python selenium scrapy selenium-webdriver

我使用 Selenium 和 Python 来从网站提取医生列表。我选择“专业”选项并提取结果。一旦我们像 Twitter feed 中那样滚动页面,结果就会显示。我无法滚动页面来查看结果。我尝试了多种方法,例如send_keys

   for i in range(0,15):
                self.driver.find_element_by_id("doctor-matrix-section").send_keys(Keys.PAGE_DOWN)
                time.sleep(1)
                print 'hello'
                print i
                i+= 1
Run Code Online (Sandbox Code Playgroud)

使用循环是因为我不知道需要按PAGE DOWN按钮多长时间。我还尝试了另一种方法:

driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
Run Code Online (Sandbox Code Playgroud)

我遵循的方法都不起作用。任何帮助都会非常有用。

小智 2

您引用的网站对我来说加载速度非常慢,并且很难针对您的特定应用程序进行测试。过去,我能够在无限加载场景中滚动的一种方法是使用 selenium 选择正文并向其发送空格键按键。

bg = driver.find_element_by_css_selector('body')

bg.send_keys(Keys.SPACE)
Run Code Online (Sandbox Code Playgroud)

您可能想尝试在for i in range(x)循环中使用它来实现所需的滚动长度。