PHP網頁截取快照:PHP截取網站網頁保存為一張圖片實現。

        更新時間:2021-12-16 編輯:創始人 關注人次:0 云搜索


        phantomjs截取網頁截圖
        場景
        有一個視頻播放地址,需要對該網頁進行截圖
        解決思路:
        1.將視頻下載到本地,使用ffmpeg進行處理
        2.使用phantomjs,phantomjs內置了webkit瀏覽器引擎,phantomjs可以模擬瀏覽器打開視頻地址,然后進行整個網頁的截圖。
        WebKit 是一個開源的瀏覽器引擎,與之相對應的引擎有Gecko(Mozilla Firefox 等使用)和Trident(也稱MSHTML,IE 使用)
        選擇
        第一個方案,ffmpeg只能處理本地視頻或者處理RTCP直播流,同時要求的視頻直播地址中有部分是直播流,有部分是組件渲染,所以該方案不可行。
        因此選擇第二個方案。
        phantomjs進行網頁截圖,這里以window平臺為例
        1.首先,去phantomjs官網下載頁面下載phantomjs程序,支持window、mac os、linux、freebsd平臺。
        2.將下載下來的phantomjs添加系統環境變量里
        3.編寫js文件capture.js
        "use strict";  //嚴格模式
        var page = require('webpage').create();
        var system = require('system');
        page.viewportSize = {
        width : 1024,
        height : 720
        };
        if (system.args.length < 3) {
        console.log('param must greater 2');
        phantom.exit();
        } else{
        var url = system.args[1];  //遠程視頻地址
        var saveFile = system.args[2];  //保存截圖的文件路徑
        page.open(url, function(status) {
        if (status == 'success'){
        // 通過在JS獲取頁面的渲染高度
        var rect = page.evaluate(function () {
        return document.getElementsByTagName('html')[0].getBoundingClientRect();
        });
        // 按照實際頁面的高度,設定渲染的寬高
        page.clipRect = {
        top:    rect.top,
        left:   rect.left,
        width:  rect.width,
        height: rect.height
        };
        setTimeout(function() {
        var result = page.render(saveFile);
        page.close();
        console.log(result);
        phantom.exit();
        }, 1000);  //延遲截圖時間
        }
        })
        }
        4.在php中進行調用
        $url = 'http://xxx';
        $savePath = 'c:\test.png';
        $jsPath = 'c:\phantomjs.js';
        $command = "phantomjs {$jsPath}  {$url}  {$savePath}";
        $result = @exec($command );
        這樣就對網頁進行截圖,保存截圖在指定路徑中。
        另外:有大神在github上提交了個操作phantomjs的php類庫,可以參考使用:
        https://github.com/jonnnnyw/php-phantomjs
        http://jonnnnyw.github.io/php-phantomjs/4.0/2-installation/
        ————————————————
        版權聲明:本文為CSDN博主「陪代碼一起浪跡天涯」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
        原文鏈接:https://blog.csdn.net/seoyundu/article/details/101782923


        本文地址: http://m.www-435789.com/show-237.html ,轉載請注明出處。

        服務支持

        我們珍惜您每一次在線詢盤,有問必答,用專業的態度,貼心的服務。

        讓您真正感受到我們的與眾不同!

        亚洲av午夜福利精品一区人妖| 亚洲VA中文字幕不卡无码| 亚洲一区精品伊人久久伊人| 亚洲国产成人综合| 亚洲韩国—中文字幕| 亚洲Av无码专区国产乱码DVD| 亚洲精品老司机在线观看| 亚洲国产综合人成综合网站| www.亚洲精品| 亚洲aⅴ无码专区在线观看| 亚洲色一区二区三区四区| 亚洲人成网站18禁止| 亚洲国产精品美女久久久久| 亚洲精品无码不卡在线播放| 亚洲欧美国产日韩av野草社区| 亚洲乱亚洲乱妇24p| 亚洲成a人无码亚洲成av无码| 亚洲精品无码成人片久久不卡| 亚洲成在人线在线播放无码| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚洲人成人伊人成综合网无码 | 亚洲资源最新版在线观看| 亚洲一卡2卡4卡5卡6卡在线99 | 亚洲AV午夜福利精品一区二区| 亚洲国产精品成人精品无码区在线 | 亚洲乱码国产一区三区| 国产亚洲美女精品久久久久狼| 亚洲韩国精品无码一区二区三区| 亚洲αv在线精品糸列| 亚洲电影免费在线观看| 亚洲视频在线不卡| 久久精品国产99国产精品亚洲| 2020天堂在线亚洲精品专区| 亚洲无人区码一二三码区别图片| 亚洲AV成人无码网天堂| 亚洲国产中文v高清在线观看| 亚洲一区二区三区香蕉| 亚洲成AV人片一区二区| 久久久久亚洲AV无码专区首JN| 亚洲av日韩av无码av| 日本亚洲色大成网站www久久|