2009-10-16 68 views

回答

1

嗨,我使用的是无头网页浏览器和Xvfb来。首先,安装软件包的依赖关系,例如Ubuntu的:

sudo apt-get install xvfb imagemagick x11-apps 

然后运行下面使用sudo来一些“nobody用户”的shellcript,就像这样:

/usr/bin/sudo -u nobody /path/screengrab.sh www.ibm.com 34344 >>/tmp/screengrab.log 2>&1 

您可能需要调整裁剪等

#!/bin/bash 

rm -rf /home/nobody/.mozilla/ 

XAUTHORITY= 

Xvfb :$2 -pixdepths 32 -screen 0 1024x1024x24 >/dev/null 2>&1 & 
XPID=$! 

sleep 1 

firefox -width 2000 -height 1024 --display :$2 http://$1 & 
FPID=$! 

sleep 6 
xwd -display :$2 -root -out /tmp/$2-$$.xwd 

convert /tmp/$2-$$.xwd /u0/screengrabs/$1.png # Cache 
convert -resize 300x300 /tmp/$2.xwd /tmp/$2-$$.png 
convert -crop 287x248+0+29 /tmp/${2}-$$.png /tmp/${2}2-$$.png 

mkdir -p /home/je/www/domaintool.se/docs/images/$1 
cp /tmp/${2}2-$$.png /home/je/www/domaintool.se/docs/images/$1/`date +%Y%m%d`.png 
rm -f /tmp/$2-$$.png /tmp/$2-$$.xwd /tmp/${2}2-$$.png 

kill $XPID >/dev/null 2>&1 
kill $FPID >/dev/null 2>&1 
1

我一直在使用这个优秀的Firefox插件抓住他们所有https://addons.mozilla.org/en-US/firefox/addon/7800/这是一个版本的作者也很好Screengrab添加上。

抓住它们全部允许您将浏览器指向URL列表,然后将在指定目录中为您生成所有屏幕截图。它在大多数网站上都很出色。

但是我正在尝试生成目前不适合我的Google地图URLS屏幕截图,因为这些页面不是标准页面 - 它们使用框架等。但对于大多数用途,上述内容非常棒 - 超级快捷建立。希望有所帮助。