Как использовать node.io для анализа HTML из node.js?

Я пытаюсь использовать node.io на node.js проанализировать HTML-страницу, которая у меня есть в виде строки в переменной.

У меня проблема с передачей строки HTML в мой node.io работа в качестве аргумента.

Это фрагмент моего кода в моем файле узла nodeiotest.js:

var nodeIOJob   =    require('./nodeiojobfile.js');
var nodeio = require('node.io');

vat htmlString = 'HTML String Here';

nodeio.start(nodeIOJob.job, function(err, output) {
        console.log(output);
}, true);

Следующее является выдержкой из моего файла nodeiojobfile.js:

var nodeio = require('node.io');

var methods = {
   input: ['xxxxxxxxxxxxxxxx'],    // htmlString is suppossed to come here
   run: function (num) {
       console.log(num);
       this.emit('Hello World!');
   }
}

exports.job = new nodeio.Job(methods);

Как мне отправить мой htmlString как аргумент моей работы в другом файле?

Кроме того, после получения файла мне нужно проанализировать его как HTML-код и выполнить некоторые основные CSS-выборки (например, getElementById() и т. Д.) И необходимо рассчитать offsetHeight определенных элементов HTML. Документация говорит, что я могу использовать get() а также getHTML() методы для анализа html URL, но как насчет HTML в строке? Как мне их разобрать?

Для тестирования я использую следующий HTML:

<div>
    <p id="p1">
        Testing document
    </p>
</div>

Я пытаюсь выбрать <p> а потом узнай его высоту.

Может кто-нибудь мне помочь? Спасибо заранее!!

1 ответ

Я не знаком с node.io, но я думаю, что вы хотите что-то вроде этого:

// nodeiotest.js
...
var htmlString = 'HTML String Here';
nodeio.start(nodeIOJob.job(htmlString), function(err, output) {
  console.log(output);
}, true);

// nodeiojobfile.js
var nodeio = require('node.io');

module.exports.job = function(htmlString) { 
  var methods = {
    input: [ htmlString ],
    run  : function (num) { 
      console.log(num);
      this.emit('Hello World!');
    }
  };
  return new nodeio.Job(methods);
};
Другие вопросы по тегам