最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nodejs中使用puppeteer控制瀏覽器中視頻播放功能

 更新時間:2019年08月26日 17:20:44   作者:大漠胡蘿卜  
本項目主要功能為在瀏覽器中自動播放視頻,并且實現音量控制,快進快退,全屏控制,播放暫停控制等功能。對Nodejs中使用puppeteer控制瀏覽器中視頻播放功能感興趣的朋友跟隨小編一起看看吧

本項目主要功能為在瀏覽器中自動播放視頻,并且實現音量控制,快進快退,全屏控制,播放暫??刂频裙δ?。

倉庫地址:  github.com/hapiman/chr…

安裝靜態(tài)服務器

如果電腦上存在nodejs的環(huán)境,可以直接安裝 anywhere 來訪問 index.html 頁面。 進入項目根目錄,執(zhí)行命令: anywhere ,然后瀏覽器會自動打開 http://localhost:8000 頁面。

使用puppeteer自動化執(zhí)行命令

通過在 nodejs 調用前端頁面的方法,然后能夠Socket實現遠程控制瀏覽器的視頻播放。

具體功能實現

var _volumeNum = 1 // 音量值
 var _speedNum = 1 // 速度值
 var videoSrc = 'demo02.mp4' // 切換資源
 window.onload = function () {
  var myVideo = document.getElementById('myVideo')
  var scSource = document.getElementById('sc')
  var myVideoBody = { pause: true }
  // 播放完成指令
  myVideo.addEventListener('ended', function () {
   scSource.src = videoSrc;
   myVideo.load()
   myVideo.play()
  })
  // 初始化
  start()
 }
 // 獲取video
 function getVideo() {
  var myVideo = document.getElementById('myVideo')
  return myVideo
 }
 // 快進
 function vforward(params) {
  if (_speedNum >= 2) return
  _speedNum = accAdd(_speedNum, 0.1)
  console.log('vforward _speedNum: ', _speedNum)
  getVideo().playbackRate = _speedNum
 }
 // 快退
 function vbackward() {
  if (_speedNum <= 0.5) return
  var myVideo = getVideo()
  _speedNum = accSub(_speedNum, 0.1)
  console.log('vbackward _speedNum: ', _speedNum)
  getVideo().playbackRate = _speedNum
 }
 // 頁面加載之后執(zhí)行命令
 function start() {
  var myVideo = getVideo()
  myVideo.volume = 1
  myVideo.playbackRate = 1
 }
 // 設置靜音
 function setMuted() {
  getVideo().muted = true
 }
 // 設置非靜音
 function setNotMuted() {
  getVideo().muted = false
 }
 // 播放
 function vplay() {
  console.log('vplay =>')
  getVideo().play();
 }
 // 暫停
 function vstop() {
  getVideo().pause();
 }
 // 重播
 function vrestart() {
  getVideo().currentTime = 0
  getVideo().play()
 }
 // 取消全屏
 function cancelFull() {
  screenfull.exit()
 }
 // 打開全屏
 function openFull() {
  getVideo().webkitRequestFullscreen()
 }
 // 音量 --
 function reduceVolume() {
  console.log('reduceVolume:: current volume: ', myVideo.volume) // 當前音量
  getVideo().muted = false
  if (_volumeNum <= 0) return
  _volumeNum = accSub(_volumeNum, 0.1)
  getVideo().volume = _volumeNum
 }
 // 音量 ++
 function addVolume() {
  console.log('addVolume:: current volume: ', myVideo.volume)  // 當前音量
  getVideo().muted = false
  if (_volumeNum >= 1) return
  _volumeNum = accAdd(_volumeNum, 0.1)
  getVideo().volume = _volumeNum
 }

遇到的問題

關于人工觸發(fā)

打開網頁的時候,autoplay可以自動播放,但是是靜音模式,從76版本開始,chrome瀏覽器安全機制不再允許有聲自動播放視頻。

同樣的,處于安全考慮,瀏覽器也不能夠在沒有用戶操作的情況,通過接口設置為全屏。

當前項目引入 puppeteer 目的就是為了模擬人工觸發(fā)頁面的情況。

總結

以上所述是小編給大家介紹的Nodejs中使用puppeteer控制瀏覽器中視頻播放功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

相關文章

  • nvm的下載,安裝與使用方法圖文詳解

    nvm的下載,安裝與使用方法圖文詳解

    這篇文章主要介紹了nvm的下載,安裝與使用方法,詳細介紹了nvm的功能、下載與安裝方法,常見命令以及相關問題解決方法,需要的朋友可以參考下
    2023-04-04
  • node基于puppeteer模擬登錄抓取頁面的實現

    node基于puppeteer模擬登錄抓取頁面的實現

    本篇文章主要介紹了node基于puppeteer模擬登錄抓取頁面的實現,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • NodeJs+MySQL實現注冊登錄功能

    NodeJs+MySQL實現注冊登錄功能

    這篇文章主要為大家詳細介紹了NodeJs+MySQL實現注冊登錄功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Node.js筆記之process模塊解讀

    Node.js筆記之process模塊解讀

    這篇文章主要介紹了Node.js process模塊解讀,process存在于全局對象上,不需要使用require()加載即可使用,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 基于node.js express mvc輕量級框架實踐

    基于node.js express mvc輕量級框架實踐

    下面小編就為大家?guī)硪黄趎ode.js express mvc輕量級框架實踐。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • node中如何使用redis的實現

    node中如何使用redis的實現

    本文主要介紹了node中如何使用redis的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • Node.js中多進程模塊Cluster的介紹與使用

    Node.js中多進程模塊Cluster的介紹與使用

    眾所周知Node.js是單線程的,一個單獨的Node.js進程無法充分利用多核。Node.js從v0.6.0開始,新增cluster模塊,讓Node.js開發(fā)Web服務時,很方便的做到充分利用多核機器。這篇文章主要給大家介紹了關于Node.js中多進程模塊Cluster的相關資料,需要的朋友可以參考下
    2017-05-05
  • Nodejs進階:核心模塊net入門學習與實例講解

    Nodejs進階:核心模塊net入門學習與實例講解

    本篇文章主要是介紹了Nodejs之NET模塊,net模塊是同樣是nodejs的核心模塊,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-11-11
  • Nodejs訪問網絡并解析返回的json的實現方法

    Nodejs訪問網絡并解析返回的json的實現方法

    本文主要介紹了Nodejs訪問網絡并解析返回的json的實現方法,文中根據實例編碼詳細介紹的十分詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Windows系統下使用Sublime搭建nodejs環(huán)境

    Windows系統下使用Sublime搭建nodejs環(huán)境

    最近在研究Nodejs開發(fā),俗話說,工欲善其事,必先利其器,當然要找到一款用著順手的編輯器作為開始。這里我們選擇的是Sublime Text 3,除了漂亮的用戶界面,最吸引我的就是它的插件擴展功能以及跨平臺特性。
    2015-04-04

最新評論

漠河县| 青神县| 砀山县| 岚皋县| 平武县| 珲春市| 灵台县| 新龙县| 呼和浩特市| 麦盖提县| 顺昌县| 遵义市| 阳原县| 晴隆县| 嘉峪关市| 灵川县| 泾源县| 奉节县| 麻栗坡县| 龙岩市| 郑州市| 江山市| 桃江县| 新化县| 息烽县| 泉州市| 禹城市| 邹城市| 南昌市| 农安县| 白银市| 苍梧县| 肥东县| 定西市| 竹山县| 库伦旗| 广汉市| 台南市| 诸城市| 江陵县| 贵定县|