PHP怎麼抓屏

來源:互聯網
上載者:User
PHP怎樣抓屏?

Windows下用PHP做網頁

在Apache的服務屬性裡,“登入”選項卡中選中“允許服務與案頭交換”就行了!

?

HWND;$browser->Visible = true;$browser->Width = 500;$browser->Height = 500;$browser->Navigate("http://www.un.org");/* Still working? */while ($browser->Busy) {    com_message_pump(4000);}$im = imagegrabwindow($handle, 0);$browser->Quit();imagepng($im, "iesnap.png");?> 

?運行這段代碼的時候伺服器上會彈出一個IE視窗並自動開啟指定的網站,截屏後視窗自動關閉,相當傻瓜!

?

?

?

?

?

Linux下用PHP做網頁

上alexa 時,總能看到alexa 顯示被查詢網站的首頁,這個是怎麼實現的呢。
通過察看頁面內容,發現原來是通過調用amazon的服務程式獲得的。
http://ast.amazonaws.com/Xino/?Action=Redirect&Service=AlexaSiteThumbnail&Url=baidu.com&
AWSAccessKeyId=1FVZ0JNEJDA5TK457CR2&Signature=tz4xyqDNcSf8A1v%2BpDo4todvM9c%3D&
Size=Small&Timestamp=2008-03-04T06%3A04%3A47.422Z&
DefaultImage=http%3A%2F%2Fclient.alexa.com%2Fcommon%2Fimages%2Fnoimages.gif
如果想在自己的網站中做出這種效果,完全可以在amazon申請一個ID獲得這樣的調用介面來實現。
但是,這樣怎麼符合探究精神?所以,經過一番翻箱倒櫃,找到下面的方法來自己實現網站的首頁。

實現網站首頁頁面縮圖製作。
步驟:
1. 啟動一個頁面抓取工具,抓取選定的網站首頁;
2.儲存抓取的頁面到伺服器上;
3.按照需要顯示的大小處理抓取的頁面;
4.把結果展現給使用者。
綜上所述,其實關鍵是在於需要有一個穩定的抓取工具,經過在網上尋找,找到下面幾個工具。

在windows環境下,可以考慮這個工具軟體來抓頁面:
IECapt.exe
在linux環境下,可以考慮這個工具軟體來抓頁面:
HTML2Image
獲得抓取工具之後,就可以採用任何一種伺服器語言編寫程式,調用這個抓取工具,然後把抓取結果返回給使用者。
下面是利用IECapt.exe並結合PHP抓取網站的例子。
在Windows/Apache2.2/Php5.2.5 下運行通過。

參考資料:
1.http://www.zubrag.com/scripts/website-thumbnail-generator.php
2.http://www.guangmingsoft.net/htmlsnapshot/html2image.htm

官方url:http://www.guangmingsoft.net/htmlsnapshot/html2image.htm
Linux kernel- 2.2.14及以上: 安裝必需lib及相關軟體
yum install -y glibc gtk+ fontconfig??cairo libpixman pango pango-devel
下載html2image
wget http://www.guangmingsoft.net/htmlsnapshot/html2image.i386.tar.gz
tar xvzf html2image.i386.tar.gz
CD html2image
設定LD_LIBRARY_PATH路徑
export LD_LIBRARY_PATH=./
mkdir /usr/X11R6/lib
ln - s /usr/share/X11 /usr/X11R6/lib/X11
運行Xvfb
./Xvfb :1 -screen 0 640x480x24 -nolisten tcp -audit 4 -auth X1.cfg & export DISPLAY=:1
產生圖片
./html2image www.google.com a.jpg
可忽略的錯誤:
error opening security policy file /usr/X11R6/lib/X11/xserver/SecurityPolicy
Could not init font path element /usr/X11R6/lib/X11/fonts/TTF/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/Speedo/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/Type1/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/CID/, removing from list!
產生1024x768 格式 容量
jpg 871K
gif 4.12M
png 1.13M

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.