как декодировать HTML-строку в узле - PullRequest
0 голосов
/ 18 ноября 2018

Я пытаюсь сделать веб-скребок, который получает легкий новый текст с веб-сайта и создает PDF-файл с использованием HTML на сайте. Для этого я получаю html текста и преобразую его в объект DOM, а затем строку HTML-кода, из которого я делаю pdf. Моя проблема заключается в том, что после преобразования в PDF-кодировка HTML-кода приводит к тому, что кавычки и другие символы становятся символами â. Как сделать PDF-файл без появления странных символов? Заранее спасибо за помощь!

const request = require('request');
const jsdom = require("jsdom");
const { JSDOM } = jsdom;
var htmlToPdf = require('html-to-pdf');

var BaseURL = 'https://www.wuxiaworld.com/novel/overgeared/og-chapter-';


for(let chapNum = 1; chapNum < 2; chapNum++) {//made to loop through many chapters
    url = BaseURL;
    url += chapNum;
    request(url , (error, response, html) => {
        if(!error & response.statusCode == 200) {
            const dom = new JSDOM(html);
            const chapterContent = dom.window.document.getElementsByClassName('fr-view')[1];//gets div I want
            const filename = 'Overgeared_Chapter_' + chapNum + '.pdf';

            htmlToPdf.convertHTMLString(chapterContent.outerHTML, filename,//takes the html string and makes pdf file
            function (error, success) {
                if (error) {
                    console.log('Worked...Not!');
                    console.log(error);
                } else {
                    console.log('Actually Worked!');
                    console.log(success);
                }
            }
        );
        }
    })
    url = BaseURL;//resets url to be changed again
}
...