Что такое кодировка чешских символов при загрузке из Интернета? - PullRequest
0 голосов
/ 05 октября 2019

Я загружаю страницу из Интернета в node.js, используя стандартную библиотеку request, и чешские символы не обрабатываются правильно.

Я пробовал utf-8, ISO-8859-1, latin1, latin2 и несколько других кодировок, которые были предложены на другой странице, но ничего не работает.

Это код, который я использую:

const request = require("request-promise-native");
const iconv = require("iconv-lite");

async function run() {
  const data = await request({
    encoding: null,
    method: "GET",
    uri: "yourpage.com"
  });

  const body = iconv.decode(data, "ISO-8859-1");
  console.log(body);
}

run().catch(console.log);

1 Ответ

0 голосов
/ 05 октября 2019

некоторые из чешских страниц закодированы в cp1250, попробуйте и все должно работать, если все остальные кодировки не пройдены.

const request = require("request-promise-native");
const iconv = require("iconv-lite");

async function run() {
  const data = await request({
    encoding: null,
    method: "GET",
    uri: "yourpage.com"
  });

  const body = iconv.decode(data, "cp1250");
  console.log(body);
}

run().catch(console.log);

...