';echo date('Y-m-d H:m:s') ...}" Prenez simplement une capture d'écran."/> ';echo date('Y-m-d H:m:s') ...}" Prenez simplement une capture d'écran.">
Maison > Article > développement back-end > Comment implémenter des captures d'écran de pages Web en PHP
Comment implémenter des captures d'écran de pages Web en PHP : téléchargez d'abord CutyCapt ; puis décompressez le package tar ; enfin utilisez le code " public function index(){echo 'e03b848252eb9375d56be284e690e873';echo date('Y-m-d H :m:s ')...}" Prenez simplement une capture d'écran.
Recommandé : "Tutoriel vidéo PHP"
Si vous devez afficher le contenu d'une URL sous forme d'image de vue, vous avez besoin d'un outil auxiliaire
CutyCapt
pour répondre à cette exigence
CutyCapt.exe
Pas besoin de cliquer pour installer public function index() { echo '<pre class="brush:php;toolbar:false">'; echo date('Y-m-d H:m:s').'<br>'; $_GET['url'] = 'https://www.aliyun.com/jiaocheng/970387.html'; $url=$_GET["url"]; $imgName = rand(10000,99999); $out = 'D:/game/'.$imgName.'.png'; //输出图片地址 $path = 'D:/game/CutyCapt.exe'; //工具存储地址 $cmd = "$path --url=$url --out=$out"; echo $cmd.'<br>'; system($cmd, $em); if(!empty($em)){ echo '成功了呢'; }; echo date('Y-m-d H:m:s').'<br>'; }
注意
(si vous exécutez $cmd directement depuis la ligne de commande Rapport d'erreur) :
QIODevice::read: maxSize argument exceeds QByteArray size limit terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.
CutyCapt est un outil de capture d'écran Site officiel http://cutycapt.sourceforge.net/
处理
:
1. Démarrer – Exécuter – entrez cmd
2. Entrez cd %windir%system32 (entrez le dossier system32 dans le répertoire d'installation de Windows)
3 Entrez Regsvr32 Msxml3.dll
4. >Système Linux
Mon objectif principal est d'utiliser php pour enregistrer des pages Web sous forme d'images. plus loin, commencez à installer CutyCapt
yum install epel-release #依赖安装 yum install Xvfbyum install xorg-x11-fonts*yum install qtwebkit-devel qt-devel #中文字体 yum install fonts-chinese yum install CutyCapt #测试使用 xvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.phpsong.com --out=phpsong.jpg 如果提示错误libEGL warning: DRI2: failed to open swrast (search paths /usr/lib64/dri)
Solution
yum install mesa-dri-driversProblème1) Il y a des caractères tronqués lors de la prise de captures d'écran
2) Vitesse d'exécution lente
3) Les captures d'écran des blogs Baidu et Komatsu ont révélé que le texte sur le bouton ne s'affiche pas, cela devrait également être dû à des caractères tronqués
PS : problème de caractères chinois tronqués
Test de capture d'écran
xvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.phpsong.com --out=1.jpg xvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.baidu.com --out=2.jpg xvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.163.com --out=3.jpg xvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.sina.com.cn --out=4.jpgExemple
<?php /* 网页截图功能,必须安装IE+CutyCapt url:要截图的网页 out:图片保存路径 path:CutyCapt路径 cmd:CutyCapt执行命令 比如:http://你php路径.php?url=http://www.111cn.net */ $url=$_GET["url"]; $imgname=str_replace('http://','',$url); $imgname=str_replace('https://','',$imgname); $imgname=str_replace('.','-',$imgname); $out = 'D:/webroot/test/'.$imgname.'.png'; $path = 'D:/webserver/CutyCapt.exe'; $cmd = "$path --url=$url --out=$out"; echo $cmd; system($cmd); ?>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!