#node.js #cheerio #jsdom
#node.js #cheerio #jsdom
Вопрос:
Я хотел бы использовать удобочитаемость для анализа содержимого «статьи» на веб-страницах. Readability
делает хорошую работу, но это зависит от JSDOM, который кажется очень медленным и выдает ошибки, если синтаксический анализ содержимого CSS завершается неудачно (что мне совсем не нужно), но игнорировать CSS в невозможно JSDOM
, как я понимаю из проблем проекта Gibhub.
Я пытался заменить JSDOM на cheerio, но я не смог выяснить, какая часть его API совместима с выводом JSDOM
.
В JSDOM
заявлении
var doc = new JSDOM(html);
создает объект DOM, который может быть передан в
let reader = new Readability(doc.window.document);
cheerio
Однако, похоже, нет ничего, что создает объект DOM.
Я пробовал
var $ = cheerio.load(html);
var object_something = $('html');
Он выдает ошибку при вызове new Readability(object_something)
Error: First argument to Readability constructor should be a document object.
что явно означает то, что он говорит. object_something
это объект, но не уверен, что это на самом деле.
Возможно ли вообще создать объект DOM с cheerio
помощью? У меня более 10 миллионов локальных HTML-документов, поэтому любое улучшение производительности сэкономит мне много времени.