wkhtmltoimage - 有时会获取整个页面,有时不会
Posted
技术标签:
【中文标题】wkhtmltoimage - 有时会获取整个页面,有时不会【英文标题】:wkhtmltoimage - sometimes get entire page, sometimes not 【发布时间】:2015-04-07 22:27:26 【问题描述】:$command = "/usr/local/bin/wkhtmltoimage --quality 70 --crop-w 800 --crop-x 50 --javascript-delay 900 --height 800";
您好,我已经完成了简单的脚本,可以通过wkhtmltoimage
将任何 url 转换为 jpg,我将它用于 facebook,但有时它有时不起作用
带默认设置
--javascript-delay 200
截图是空的,900ms
延迟它工作正常。但有时缺少一张或多张图片,我尝试禁用 javascript,或将等待时间更改为 2 秒,但有时可以,有时不行。
我需要简单的解决方案来从 facebook url 截屏,但我不想使用第三方服务。有什么设置可以避免这个问题吗?并在图像未保存时重试?因为有时图像也没有保存,这太常见了。
【问题讨论】:
如果可能的话,我会使用事件而不是计时器。另一种选择是尝试检查图像以查看它是否不完整并且应该“重新拍摄”。 我需要快速响应,越快越好,这样需要的时间太长了。 最快的方法是使用事件,因为它们可以让您确切知道某事何时完成。现在,如果您的工具提供此类事件,我不知道。 【参考方案1】:选项--disable-smart-width
为我工作。我在捕获某些未完全呈现的网站的屏幕截图时遇到了类似的问题。
检查这个 GitHub 问题中的人做了什么 https://github.com/wkhtmltopdf/wkhtmltopdf/issues/2408。
与他不同的是,我不必禁用 javascript,也不必添加延迟。
【讨论】:
以上是关于wkhtmltoimage - 有时会获取整个页面,有时不会的主要内容,如果未能解决你的问题,请参考以下文章
wkhtmltoimage 分段错误(核心转储)。错误带有一些特定的网址
尝试使用 imgkit 和 wkhtmltoimage 将 html 转换为图像