• <del id="gycm0"></del>
    <abbr id="gycm0"></abbr>
    <fieldset id="gycm0"><table id="gycm0"></table></fieldset>

    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://www.szycspjx.com/show-237.html ,轉載請注明出處。

    服務支持

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

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

    主站蜘蛛池模板: 久久精品国产99久久香蕉| 无码国内精品久久人妻| 一级做a爰黑人又硬又粗免费看51社区国产精品视 | 无码国产精品一区二区免费3p| 国产午夜精品理论片久久| 国产亚洲一区二区精品| 无码aⅴ精品一区二区三区浪潮| 精品人妻少妇一区二区三区不卡| 久久亚洲国产午夜精品理论片| 精品无人码麻豆乱码1区2区| 亚洲精品无码久久一线| 欧美久久久久久午夜精品 | 久久亚洲国产精品一区二区| 国产福利微拍精品一区二区| 久久精品国产亚洲av日韩| 中文字幕精品一区二区精品| 久久这里只有精品视频99| 国产乱码精品一区二区三| 2021国产三级精品三级在专区| 国产精品成人观看视频免费| 国产精品国产三级国产普通话| 久久久精品人妻一区二区三区四| 亚洲精品网站在线观看不卡无广告| 久久精品亚洲乱码伦伦中文| 国产乱子伦精品无码专区| 国产原创精品 正在播放| 国产成人精品无人区一区| 91精品国产91久久| 99热日韩这里只有精品| 99热这里只有精品国产66| 国产成人精品免费视频大全| 亚洲愉拍自拍欧美精品| 99精品在线免费| 国产精品美女网站| 精品国内自产拍在线观看| 国内精品久久久久久久久电影网| 国产精品偷伦视频免费观看了| 国内精品久久久久久久coent| 精品亚洲一区二区三区在线播放| 久99久无码精品视频免费播放| 欧美激情精品久久久久久久九九九 |