Невозможно получить элемент HTML с узла JS + cheerio - PullRequest
0 голосов
/ 28 октября 2018

Я написал этот код, чтобы получить какой-то элемент со страницы ВКонтакте. Но он возвращает null. Можете ли вы помочь мне, если мне нужно захватить имя и фотографию профиля? Почему я не могу использовать это?

const request = require('request');
const cheerio = require('cheerio');

request('https://vk.com/durov', (err, res, html) => {
  if (!err && res.statusCode == 200) {
    const $ = cheerio.load(html);

    const nameElement = $('.page_block');

    console.log(nameElement.html());
  }
});

1 Ответ

0 голосов
/ 29 октября 2018

Кажется, этот сайт проверяет некоторые шаблоны пользовательских агентов.Например, следующие работы:

const request = require('request');
const cheerio = require('cheerio');

request({
    url: 'https://vk.com/durov',
    headers: {
        'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1'
    }
}, (err, res, html) => {
    if (!err && res.statusCode === 200) {
        var $ = cheerio.load(html);
        console.log($('.page_block').html());
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...