Semalt Expert пропонує посібник зі скребки Інтернету за допомогою Javascript

Веб-скребки можуть стати прекрасним джерелом критичних даних, які використовуються в процесі прийняття рішень у будь-якій справі. Тому він лежить в основі аналізу даних, оскільки це єдиний вірний спосіб збору достовірних даних. Але, оскільки кількість вмісту, що доступний для виходу з Інтернету, постійно зростає, можна практично неможливо перенести кожну сторінку вручну. Це вимагає автоматизації.

Незважаючи на те, що існує багато інструментів, розроблених для різних проектів автоматизованого вискоблювання, більшість з них є преміальними і коштуватимуть цілого капіталу. Тут увійшов Puppeteer + Chrome + Node.JS. Цей підручник проведе вас через процес, який гарантує, що ви можете легко скребкувати веб-сайти автоматично.

Як працює налаштування?

Важливо зазначити, що трохи знань про JavaScript стане у нагоді у цьому проекті. Для початку вам доведеться отримати вищевказані 3 програми окремо. Puppeteer - це бібліотека вузлів, яку можна використовувати для керування Chrome без голови. Безголовий Chrome посилається на процес запуску хрому без його GUI, або іншими словами, без запуску chrome. Вам доведеться встановити Node 8+ зі свого офіційного веб-сайту.

Встановивши програми, настав час створити новий проект, щоб почати розробляти код. В ідеалі це скреблінг JavaScript, оскільки ви будете використовувати код для автоматизації процесу вискоблювання. Для отримання додаткової інформації про Puppeteer, зверніться до його документації, є сотні прикладів, з якими можна пограти.

Як автоматизувати вискоблювання JavaScript

Створюючи новий проект, приступайте до створення файлу (.js). У першому рядку вам доведеться викликати залежність Puppeteer, яку ви встановили раніше. Потім виконується основна функція "getPic ()", яка буде містити весь код автоматизації. Третій рядок викликає функцію "getPic ()", щоб запустити її. Враховуючи, що функція getPic () - це функція "асинхронізація", ми можемо використовувати вираз очікування, який призупинить функцію, очікуючи розв'язання "обіцянки", перш ніж перейти до наступного рядка коду. Це буде функціонувати як основна функція автоматизації.

Як викликати хром без голови

Наступний рядок коду: "браузер const = очікуємо лялечку.Запустіть ();" автоматично запустить лялечку і запустить хромований екземпляр, встановивши його на нашу новостворену змінну "браузера". Перейдіть до створення сторінки, яка потім використовуватиметься для навігації до URL-адреси, яку ви хочете заблокувати.

Як записувати дані

API Puppeteer дозволяє пограти з різними вводами веб-сайтів, такими як тактова робота, заповнення форми, а також читання даних. Ви можете звернутися до нього, щоб детально ознайомитись з тим, як ви можете автоматизувати ці процеси. Функція "scrape ()" буде використовуватися для введення нашого коду скребки. Перейдіть до запуску функції вузла scrape.js, щоб ініціювати процес скребки. Потім вся установка повинна автоматично почати виводити потрібний вміст. Важливо пам’ятати, щоб пройти свій код і перевірити, чи все працює відповідно до дизайну, щоб уникнути помилок по дорозі.