使用python

时间:2019-03-29 17:33:12

标签: python selenium

我想像往常一样滚动到页面底部。但是在此网站上似乎无效。这是您需要滚动到底部以便加载新链接的其中之一。

这是我正在使用的命令:

browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")

我得到的错误是:

Traceback (most recent call last):
  File "/somePathTo/someProgram.py", line 12, in <module>
    browser.execute_script("window.scrollTo(0,document.body.scrollHeight);")
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py", line 636, in execute_script
    'args': converted_args})['value']
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Cannot read property 'offsetTop' of null
  (Session info: chrome=73.0.3683.86)
  (Driver info: chromedriver=72.0.3626.69 (3c16f8a135abc0d4da2dff33804db79b849a7c38),platform=Mac OS X 10.14.3 x86_64)

其他任何滚动条也不起作用,JS脚本出了点问题... 我不知道哪个元素为null,因此不能具有'offsetTop'属性...也许我应该确定一些可以具有该属性的元素,但是除了这个脚本,我对JS的了解不多

编辑: 我确实用这段代码解决了我的特定问题

browser.execute_script('arguments[0].scrollIntoView(true);', target)

其中target是底部的元素。但是,我想知道JS代码的问题所在。

0 个答案:

没有答案