Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> PHP - wykonanie screenshota - czarna grafika
mikolajjj
post 1.09.2012, 16:06:36
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 23.08.2008

Ostrzeżenie: (0%)
-----


Witam,

chciałbym wykonać screenshot strony widniejącej w przeglądarce, ale mam problem, wykorzystuję funkcje biblioteki GD imagegrabwindow i imagegrabscreen ale zapisuje mi się czarny obraz (chociaż zapisuje dość długo, tak jakby przetwarzał).

próbowałem wg przykładu z manuala:
  1. $browser = new COM("InternetExplorer.Application");
  2. $handle = $browser->HWND;
  3. $browser->Visible = true;
  4. $browser->Navigate("http://www.google.pl/");
  5.  
  6. /* Still working? */
  7. while ($browser->Busy) {
  8. com_message_pump(4000);
  9. }
  10. $im = imagegrabwindow($handle, 0);
  11. $browser->Quit();
  12. imagepng($im, "dd.png");
  13. imagedestroy($im);


potem curl'em
  1. $ch = curl_init('http://www.google.pl/');
  2.  
  3. $options = array(#CURLOPT_FILE => $fp,
  4. CURLOPT_HEADER => 0,
  5. CURLOPT_FOLLOWLOCATION => 1,
  6. CURLOPT_TIMEOUT => 60);
  7. curl_setopt_array($ch, $options);
  8.  
  9. curl_exec($ch);
  10.  
  11.  
  12. $im = imagegrabscreen();
  13. imagepng($im, "im8.png");
  14. imagedestroy($im);
  15. curl_close($ch);



curl prawidłowo wyświetla stronę, ale imagegrabscreen zapisuje czarną grafikę.

proszę o pomoc, czy istnieje jakiś sposób na zrobienie screenshota?

Z góry dzięki

Ten post edytował mikolajjj 1.09.2012, 16:19:51
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
cv65
post 2.09.2012, 11:01:46
Post #2





Grupa: Zarejestrowani
Postów: 94
Pomógł: 9
Dołączył: 12.04.2009

Ostrzeżenie: (20%)
X----


  1. <?php
  2. $img = imagegrabscreen();
  3. imagepng($img, 'screenshot.png');
  4. ?>


  1. <?php
  2. $Browser = new COM('InternetExplorer.Application');
  3. $Browserhandle = $Browser->HWND;
  4. $Browser->Visible = true;
  5. $Browser->Fullscreen = true;
  6. $Browser->Navigate('http://www.google.com');
  7.  
  8. while($Browser->Busy){
  9. com_message_pump(4000);
  10. }
  11.  
  12. $img = imagegrabwindow($Browserhandle, 0);
  13. $Browser->Quit();
  14. imagepng($img, 'screenshot.png');
  15. ?>


Wymagane min PHP 5.2.2
A działa tylko na systemie windows

Ten post edytował cv65 2.09.2012, 11:01:57
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 16:33