Page Speed Kullanarak Ekran Görüntüsü Alma

Google’un bir çok servisi bulunuyor bunların neredeyse hepsi ücretsiz buda ücretsiz servislerinden olan page speed testinin api kullanarak bir ekran görüntüsü almak bu api döküman olarak sadece ekran çıktısı vermiyor ama ben ekran görüntüsünü almak için kullandım.

Fonksiyon:

function screenshoot_url($url = "https://www.google.com"){
    $curl_init = curl_init("https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url={$url}");

    curl_setopt($curl_init, CURLOPT_RETURNTRANSFER, true);

    $response = curl_exec($curl_init);

    curl_close($curl_init);
    
    return json_decode($response, true);
}

Kullanımı:

$url = "https://www.arcface.net/";

$decode = screenshoot_url($url);



$snap = str_replace(['_', '-'], ['/', '+'], $decode['lighthouseResult']['audits']['final-screenshot']['details']['data']);

echo "<img src=\"".$snap."\" />";

Tabi bu size direkt olarak bir base64 kodu döndürüyor ama bunu direkt kaydetmek indirmek isteseniz de şu şekilde kullanabilirsiniz.

list($type, $snap) = explode(';', $snap);
list(, $snap)      = explode(',', $snap);
$snap = base64_decode($snap);

file_put_contents("dizinyolu/gorseladi.png", $snap);

Şeklinde görseli direkt olarak indirip kaydedebilirsiniz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir