CoderCastrov logo
CoderCastrov
Node.js

Как парсить группы Facebook

Как парсить группы Facebook
просмотров
2 мин чтение
#Node.js

Как парсить с помощью Puppeteer

На Facebook много информации...

Допустим, вам нужна информация с страницы Facebook, но там много мусора. Вам нужна только ценная информация. Для этого вам нужно войти, прокрутить и найти нужную информацию.

Что, если я скажу вам, что есть более простой способ получить информацию? Один из способов получить информацию - это парсить ее.

Парсеры распространены и очень просты в создании. Для этого я буду использовать Puppeteer и Node. Я создал парсер, чтобы узнать, где находятся патрули полиции вокруг моего города.

Как это сделать с помощью Puppeteer

Предварительные требования

Я разберу код по частям и объясню предварительные требования. Вам понадобятся две зависимости: dotenv и puppeteer.

Dotenv используется для работы с переменными окружения. В нашем случае, мы загружаем используемые переменные, которые мы не хотим хранить в коде. Вам нужно будет записать эти свойства в файл .env.

Страница: process.env.LEVAK_POLICIJE

Имя пользователя в Facebook: process.env.FB_USER

Пароль в Facebook: process.env.FB_PW

Puppeteer в основном используется для тестирования, в нашем случае мы будем использовать его для парсинга. Понимание async/await будет плюсом для этого проекта.

Код

Итак, сначала мы запускаем экземпляр Chrome в режиме без графического интерфейса, если вы хотите увидеть действие, включите флаг без головы. После этого мы переходим на фактическую страницу с отключенными уведомлениями. Мы получаем страницу входа, поэтому нам нужно ввести имя пользователя и пароль. Поскольку эта информация является конфиденциальной, она привязана к окружению текущего процесса.

После входа в систему мы ждем некоторое время, затем ищем имя класса userContentWrapper. Мы проходимся по элементам DOM и извлекаем данные, после чего выводим их в консоль.

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

Спасибо за чтение!


Продолжайте чтение моих других статей

5 распространенных ошибок Git, которые совершает каждый разработчик

И как их исправить в Sourcetree

levelup.gitconnected.com

Как быстрее и проще разрешать конфликты Git в вашей любимой IDE

Разрешение конфликтов Git в VS Code, IntelliJ, Nano и Sourcetree

betterprogramming.pub

13 цитат, которые должен знать каждый великий разработчик

13 цитат разработчиков, о которых стоит задуматься

levelup.gitconnected.com