Nasıl PHP kullanarak bir web sayfası bir Snapshot veya hâli elde olabilir?

5 Cevap php

Ben Anlık / Thumbshots / Site önizleme a-site.com oluşturmanız gerekir.

Ben ihtiyacım ile buluşuyor thumbshot.org gibi bazı site vardır. Ama benim proje için başkalarına bağımlı değil, harici bir hizmeti kullanmak istemiyorsanız (onlar site kapatmak ne olur?)

Bu nedenle, ben bana bunu izin bazı proje arıyorum.

Herhangi bir fikir?

5 Cevap

Bunu yapmak için PHP kütüphanede bir şey yok - görüntüleri çekmek için (bir sıra ile) harici bir uygulama kurma bakıyoruz, kuyruğa öğeler eklemek için size ders kullanım PHP olabilir rağmen.

Bu yüzden belki de bunu yapmak için PHP bir senaryo yazabilirim - bilgisayarı (istemci web sunucusu) ekran görüntüleri alır GD Windows fonksiyonları bir çift vardır.

Edit: bu düşünce oldu: imagegrabscreen and imagegrabwindow . I'm not sure they will do what you want however (even in full screen mode Firefox has ablue bar at the top of the screen - not sure about other browsers). However, Pierre has something bu fonksiyonlar üzerinde Eğer ilgileniyorsanız.

I'd suggest writing an application in another language (I assume .NET has something) to do this for you. Edit: This page tells you how to do it in C#

PHP, bu durumda sizin için yapacağını pek bir şey yok. Sen belki de JavaScript desteği ile, CSS-desteği ile tam bir (X) HTML render motoru gerekiyordu.

Yani, ya da gerçek bir tarayıcı başlatmak ve bunun dışında bir ekran görüntüsü alacağını sapıkça komut bir tür kullanın. Her iki şekilde de, PHP muhtemelen işletme bölümü için doğru bir araç değildir.

Eğer bir resme görüntülediğiniz web sayfasını dönüştüren bir Firefox eklentisi var:

http://www.screengrab.org/

http://addons.mozilla.org/en-US/firefox/addon/1146

Yaratıcı almak için istekli iseniz, bu sorunlu erişmek mümkün olabilir.

Thanks to all. I found a pseudo-solution, (using dcom + imagegrabscreen + wamp). I need to resize the final.png with gd, because the png is equal to resolution of client (in my home, is a picture of 1650*1280). Whe I end this, I will post a .zip file to dowload Thanks again (But if anyone have a better idea, I am happy to see that)

PS: benim İngilizce için üzgünüm