Почему выдает пустую результат при парсинге веб страницы?
Вам нужно чуть лучше овладеть навыком отладки своих скриптов.

Например, банально, кроме console.log(a); можно добавить console.log(html); сразу после того, как в этой переменной что-то должно появиться. Если появилось, то значит что-то не так после этой строки. Если не появилось, то что-то не так до этой строки. Из всевозможных ошибок мы сразу убираем половину.

Таким образом, методом исключения (то есть каждый раз исключая половину ошибок), можно добраться до того места, где ошибка есть, и дальше будет легко понять её.

Процесс отладки доступен только тому, кто имеет возможность запустить скрипт в тех условиях, где возникает ошибка. Все остальные люди могут лишь гадать, в чём же дело. Поэтому лучше не задавать вопросы, где для получения ответа нужна отладка. Кроме того, это работа, которую нужно просто сделать, и для которой не нужен эксперт.
в html не html, а объект request

request('https://google.com', function (error, response, html) {
    if (!error && response.statusCode == 200) {
        const $ = cheerio.load(html);

        const a = $('body').text();

        console.log(a);
    }
});