Heim > Backend-Entwicklung > PHP-Problem > So implementieren Sie Webseiten-Screenshots in PHP

So implementieren Sie Webseiten-Screenshots in PHP

藏色散人
Freigeben: 2023-03-04 13:46:01
Original
5506 Leute haben es durchsucht

So erstellen Sie Webseiten-Screenshots in PHP: Laden Sie zuerst CutyCapt herunter, entpacken Sie dann das TAR-Paket und verwenden Sie schließlich den Code „public function index(){echo '

';echo date('Y-m-d H:m:s; ').. .}" Machen Sie einfach einen Screenshot. </p></blockquote>
<p><img  src="https://img.php.cn/upload/article/202008/15/2020081509330277584.jpg" alt="So implementieren Sie Webseiten-Screenshots in PHP" ></p>
<p>Empfohlen: „<a href="//m.sbmmt.com/course/list/29/type/2.html" target="_blank">PHP Video Tutorial</a>“</p>
<link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-963e387caa.css">
<p id="content_views" class="markdown_views prism-tomorrow-night-eighties"><!-- flowchart 箭头图标 勿删 --><svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path></svg></p>
<blockquote><p><strong>Wenn Sie den Inhalt einer URL in ein Ansichtsbild ausgeben müssen, benötigen Sie das Hilfstool <code> CutyCapt code>Um diese Anforderung zu erfüllen</code></strong><code>CutyCapt</code>来实现这一需求</p></blockquote>
<h2>Windows系统</h2>
<ul>
<li>下载CutyCapt<br>CutyCapt下载地址:http://sourceforge.net/projects/cutycapt/files/cutycapt/</li>
<li>解压tar包,看到<code>CutyCapt.exe</code>  不需要再点击安装</li>
<li>代码实现(时间需要20多秒):</li>
</ul><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false;"> public function index()
    {
        echo &#39;<pre class="brush:php;toolbar:false">&#39;;
        echo date(&#39;Y-m-d H:m:s&#39;).&#39;<br>&#39;;
        $_GET[&#39;url&#39;] = &#39;https://www.aliyun.com/jiaocheng/970387.html&#39;;
        $url=$_GET["url"];
        $imgName = rand(10000,99999);
        $out = &#39;D:/game/&#39;.$imgName.&#39;.png&#39;; //输出图片地址
        $path = &#39;D:/game/CutyCapt.exe&#39;;   //工具存储地址
        $cmd = "$path --url=$url --out=$out";
        echo $cmd.&#39;<br>&#39;;
        system($cmd, $em);
        if(!empty($em)){
            echo &#39;成功了呢&#39;;
        };
        echo date(&#39;Y-m-d H:m:s&#39;).&#39;<br>&#39;;

    }
Nach dem Login kopieren
  • 注意(如果直接命令行执行 $cmd报错):

QIODevice::read: maxSize argument exceeds QByteArray size limit terminate called after throwing an instance of &#39;std::bad_alloc&#39; what(): std::bad_alloc This application has requested the Runtime to terminate it in an unusual way. Please contact the application&#39;s support team for more information.

处理

Windows-System

  • CutyCapt herunterladen
    CutyCapt-Download-Adresse: http://sourceforge.net/projects/cutycapt/files/cutycapt/
  • Entpacken Sie das TAR-Paket und sehen Sie sich CutyCapt.exe an. Zum Installieren ist kein Klick erforderlich.
  • Code-Implementierung (dauert mehr als 20 Sekunden):
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)
Nach dem Login kopieren
  • Hinweis (Wenn $cmd direkt über die Befehlszeile ausgeführt wird, wird ein Fehler gemeldet):

QIODevice::read: maxSize-Argument überschreitet QByteArray-Größenbeschränkung. Terminate wird aufgerufen, nachdem eine Instanz von „std::bad_alloc“ ausgelöst wurde Weitere Informationen erhalten Sie vom Support-Team der Anwendung.

Verarbeitung:

1. Start – Ausführen – cmd eingeben
2 Installationsverzeichnis)

3. Geben Sie Regsvr32 Msxml3.dll ein

4. Grundlink

Linux-System


CutyCapt ist ein Screenshot-Tool

Offizielle Website http://cutycapt.sourceforge.net/

Mein Hauptzweck ist die Verwendung von PHP Um Webseiten als Bilder zu speichern, beginnen Sie ohne weiteres mit der Installation von CutyCapt Der Text auf den Schaltflächen wird nicht angezeigt, was ebenfalls an verstümmelten Zeichen liegen sollte

Test-Screenshot

yum install mesa-dri-drivers
Nach dem Login kopieren

Beispiel

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.jpg
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo implementieren Sie Webseiten-Screenshots in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage