Press ESC to close

php elementin ekran resmini alıp sunucuya kaydettirme

PHP ile bir web sayfasındaki belirli bir elementin ekran görüntüsünü alarak sunucuya kaydetmek için web tarayıcısı otomasyon kütüphanelerini kullanmanız gerekmektedir. Puppeteer, bu tür bir işlemi gerçekleştirmek için kullanılabilir. İşte bir örnek:

  1. Öncelikle, Puppeteer’ı projenize dahil etmelisiniz. Puppeteer’ın resmi GitHub sayfasından son sürümü indirebilirsiniz: Puppeteer GitHub
  2. Zip dosyasını indirip çıkartın ve projenizin dizinine taşıyın.
  3. Aşağıdaki gibi bir örnek kodu kullanarak bir elementin ekran görüntüsünü alabilir ve sunucuya kaydedebilirsiniz:
<?php
require 'puppeteer/vendor/autoload.php'; // Puppeteer'ı dahil edin

use Nesk\Puphpeteer\Puppeteer;

// Puppeteer'ı başlat
$puppeteer = new Puppeteer;
$browser = $puppeteer->launch();

// Yeni bir sayfa aç
$page = $browser->newPage();

// Sayfaya git
$page->goto('https://www.example.com');

// Elementi seç
$element = $page->querySelector('css_selector'); // css_selector yerine hedef elementin CSS seçicisini belirtin

// Elementin boyutlarını al
$boyutlar = $element->boundingBox();

// Sayfa boyutlarını ayarla
$page->setViewport([
    'width' => $boyutlar['width'],
    'height' => $boyutlar['height']
]);

// Ekran görüntüsünü al
$screenshot = $element->screenshot();

// Ekran görüntüsünü sunucuya kaydet
$dosyaAdi = 'element_screenshot.png';
file_put_contents($dosyaAdi, $screenshot);

// Tarayıcıyı kapat
$browser->close();
?>

Yukarıdaki örnekte, Puppeteer’ı kullanarak web tarayıcısını başlatıyoruz. Ardından, bir sayfa açıyoruz ve hedef elementin CSS seçicisini belirterek elementi seçiyoruz. Elementin boyutlarını alarak, sayfa boyutlarını buna göre ayarlıyoruz. Daha sonra, screenshot() yöntemini kullanarak elementin ekran görüntüsünü alıyoruz. Son olarak, file_put_contents() fonksiyonunu kullanarak ekran görüntüsünü belirtilen dosya adıyla sunucuya kaydediyoruz.

CSS seçicisi olarak querySelector() yöntemi kullanılarak elementin herhangi bir CSS seçicisi belirtilebilir. Örneğin, elementin ID’sini veya class adını kullanabilirsiniz.

Bu örnekte, Puppeteer’ın Node.js’e dayalı bir kütüphane olduğunu unutmayın. Bu nedenle, PHP’de Puppeteer kullanırken, Puppeteer’ın PHP için bir portu olan Puphpeteer’ı kullanmanız gerekmektedir. Puphpeteer, Puppeteer’ın PHP’de kullanımını kolaylaştırmak için bir arayüz sağlar.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

@Katen on Instagram
Bu hata mesajını yalnızca WordPress yöneticileri görebilir

Hata: 1 kimliğine sahip hiçbir akış bulunamadı.

Bir akış oluşturmak için lütfen Instagram Akışı ayarlar sayfasına gidin.