我有一个html页面,其动画会随着时间的推移而播放,我需要在某些时间间隔(例如每秒后)截取网页截图并将图像保存到磁盘,这样我就可以使用它们进行进一步处理,
如果它拍摄DIV元素的快照就好了,因为有一个父div元素覆盖了我想拍摄快照的所有项目。
请建议我怎样才能做到这一点,我可以使用flash / javascript / php或任何技术,这不是约束,
操作系统:Windows或MAC
PS:我读了很多关于截取网页截图的网页,但在大多数网页中,答案是,因为它违反了安全性,所以不允许,但在我的情况下,不需要这样的安全性,它是本地的页答案 0 :(得分:2)
您可以使用Selenium浏览自动化
编写脚本选择您喜欢的语言(Python,Java,Ruby等)和Selenium库
编写一个Selenium脚本,打开页面并等待您需要的时间
使用Selenium屏幕截图API https://code.google.com/p/selenium/source/browse/trunk/py/selenium/webdriver/firefox/webdriver.py#70截取屏幕截图并将其保存到本地磁盘
Selenium API可以进一步用于查询元素的尺寸 - 它出现的位置,这样您就可以对截图进行处理并将其裁剪到相关区域。
存在客户端Javascript解决方案,可将仲裁HTML DOM转换为<canvas>
,但输出不是100%准确,仅适用于简单的HTML元素。