簡體   English   中英

如何從Chrome遠程調試中獲取DOM

[英]How do I get DOM from Chrome Remote Debugging

我一直在嘗試通過Chrome遠程調試使用chrome-remote-interface來獲取DOM對象,但是沒有運氣(代碼在node.js中)

var Chrome = require('chrome-remote-interface')

Chrome(function (chrome) {
  chrome.on('Page.loadEventFired', function(evt) {
    console.log('load event fired')
    chrome.DOM.getDocument(null, function(resp) {
      console.log('DOM DOC')
      console.log(resp)   
    })
    chrome.DOM.getOuterHTML({}, function(resp) {
      console.log('outerhtml')
      console.log(resp)
    })
  })
  chrome.Debugger.enable()
  chrome.DOM.enable()
  chrome.Network.enable()
  chrome.Page.enable()
  chrome.Page.navigate({'url': 'https://github.com'})    
}).on('error', function () {
  console.error('Cannot connect to Chrome')
})

運行文件時,我得到了這些輸出

load event fired
DOM DOC
false
outerhtml
true

原來是錯誤的回調處理程序,第一個參數是錯誤而不是響應。 衛生署!

chrome.DOM.getDocument(null, function(err, resp) {
  console.log('DOM DOC')
  console.log(err)
  console.log(resp)

  // chrome.close()
})
chrome.DOM.getOuterHTML({}, function(err, resp) {
  console.log('outerhtml')
  console.log(err)
  console.log(resp)
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM