เทคนิคการสร้าง screenshot ของ Website ด้วย PHP
บทความนี้จะเป็นการแนะนำวิธีการง่ายๆในการสร้างรูปภาพของเว็บไซต์ด้วย API ของ Google (Google PageSpeed Insights API) จาก URL
สามารถเอาข้อมูลที่ได้ไปใช้งานต่อได้นะครับ
<?php
// URL ของเว็บไซต์ที่ต้องการอ่านข้อมูล
$url = "https://www.goragod.com/";
// เรียก PageSpeed API เพื่ออ่านข้อมูล อาจใช้เวลาสักครู่
$result = file_get_contents("https://www.googleapis.com/pagespeedonline/v2/runPagespeed?url=$url&screenshot=true");
// แปลงผลลัพท์เป็น JSON
$result = json_decode($result, true);
// ตรวจสอบข้อมูลที่ส่งมา
//var_dump($result);
// ข้อมูล screenshot
$screenshot = str_replace(array('_', '-'),array('/', '+'), $result['screenshot']['data']);
// แสดงรูปภาพ
echo '<img src="data:image/jpeg;base64,'.$screenshot.'" />';
คำสั่งด้านบนเป็นการเรียกใช้ API ของ Google เพื่ออ่านข้อมูลของเว็บไซต์ ที่ URL https://www.googleapis.com/...line/v2/runPagespeed ซึ่งอาจต้องใช้เวลาในการอ่านสักครู่ถึงจะได้ข้อมูลกลับมา และข้อมูลที่ส่งกลับก็ยังมีข้อมูลอื่นๆที่อาจจะเป็นประโยชน์อยู่ด้วย ซึ่งสามารถดูได้จากตัวแปร $result (JSON) ด้วยการเอา comment บรรทัดนี้ออกvar_dump($result);
สามารถเอาข้อมูลที่ได้ไปใช้งานต่อได้นะครับ