3

google fastflipのようなサイトの URL リストがある場合、スクリーンショットをキャプチャするテクニックを知りたいです。この種のタスクに必要なテクノロジーまたはテクニック。このテクニックがレールで利用できるなら、それは素晴らしいことです。

ありがとう

4

3 に答える 3

1

ねえ、私はヘッドレス Web ブラウザーと Xvfb を使用しています。まず、Ubuntu などのパッケージの依存関係をインストールします。

sudo apt-get install xvfb imagemagick x11-apps

次に、次のように、sudo を使用して以下の shellcript を「nobody user」に対して実行します。

/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
于 2009-10-16T09:33:09.873 に答える
1

私はこの優れた Firefox プラグイン Grab Them All https://addons.mozilla.org/en-US/firefox/addon/7800/を使用しています。これは、著者の優れた Screengrab アドオンのバージョンでもあります。

[すべて取得] を使用すると、ブラウザで URL のリストを指定すると、指定したディレクトリにすべてのスクリーンショットが作成されます。ほとんどのウェブサイトで見事に機能します。

ただし、ページが標準のページではないため、現時点では機能しません-フレームなどを使用するGoogleマップのURLのスクリーンショットを生成しようとしています. それが役立つことを願っています。

于 2011-01-13T20:20:46.073 に答える
1

そのためには、HTMLレンダリング エンジンが必要です。
簡単な方法は、そのタスクにブラウザ プラグインを使用することです。

これをチェックしてください:ウェブサイトのスクリーンショットを作成する15の方法

于 2009-10-16T08:06:26.907 に答える