我需要在网页上滚动以取消某些文本,因为当用户滚动浏览网站(类似于Facebook或Twitter)时,文本会动态加载。用python
,selenium
和Firefox
(只有几行代码)滚动很简单,但是相同的代码在phantomJS
中不起作用。Python Selenium在滚动Firefox和PhantomJS之间的区别
我认为问题是我不能用phantomJS
设置窗口大小。这是我的测试代码:
driver = webdriver.Firefox()
driver.get('https://su.org/')
print(driver.get_window_size(), driver.get_window_position())
driver.save_screenshot('imgs/firefox.png')
driver.quit()
>>> {'width': 1024, 'value': None, 'height': 555} {'value': None, 'x': 336, 'y': 28}
driver = webdriver.PhantomJS()
driver.get('https://su.org/')
driver.set_window_size(width=1024, height=555)
print(driver.get_window_size(), driver.get_window_position())
driver.save_screenshot('imgs/phantom2.png')
driver.quit()
>>> {'width': 1024, 'height': 555} {'x': 0, 'y': 0}
这是事实,第二码打印正确的大小,但如果你看到了保存截图,第二图像的大小是错误的。 PhantomJS
把所有的网站放在窗口中,我可以滚动。我如何才能获得与Firefox
相同的结果?