Налаштування плагіна WPGrabber, приклад граббінг html контенту
Щоб уникнути помилок в роботі з WPgrabber розглянемо настройку html-імпорту стрічок з сайту.
Для прикладу розглянемо розділ статей одного комерційного сайту.
У нас це URL: www.trajectus.ru/stati/
4) Обов'язково треба встановити параметр Кодування HTML-сторінки.
Натискаємо кнопку «пошук» і шукаємо рядок:
Отже встановлюємо в поле «Кодування HTML-сторінки» кодування UTF-8.
Щоб довго не шукати користуйтеся пошуком браузера (Ctrl + F) і вводите слово charset. Іноді кодування вказується в скриптах, на них звертати увагу не варто.
Шукайте в вихідному html-коді сторінки подібну рядок:
Іноді веб-майстри кодування не вказують, отже методом перебору міняємо на: Вихідна або WINDOWS-1251.
Тепер заповнимо поле "Шаблон посилань». за допомогою якого йде збір посилань на статті для граббінг з метою імпорту на свій сайт.
Для вірного заповнення параметра «Шаблон посилань», в WPGrabber необхідно визначити вид посилань в коді сторінки.
Копіюємо частину тексту будь-якого заголовка статті. У нас перший заголовок контенту носить назву «Тендерні розрахунки»
Переходимо до початкового коду, тиснемо Ctrl + F і в поле пошуку копіпаст текст: «Тендерні розрахунки».
Шукаємо ту частину, де знаходиться відкритий html-тег посилання прямо перед шуканим нами текстом.
Важливим є те, що ця частина URL фіксована:
Оскільки ця частина урла залишається постійною для всіх інших посилань, що йдуть на сторінці.
Розглянемо інші посилання:
Всі ці посилання підходять під наше опис шаблону. Для коректного заповнення поля «шаблон посилань» в WPGrabber необхідно вивчити формат опису регулярних виразів PCRE.
Давайте зрозуміємо логіку опису шаблону посилань:
- У нас мінливі значення це: dostavka_v_krym /, erevalka_gruzov_v_g_ust_kut_s_zhd_st_lena_na_port_osetrovo / і preimuschestva-aviatsionnogo-transport
- У цих значень різну кількість символів в довжину
- Вони можливо можуть включати в себе цифри
- Не може бути тільки символу пробілу, тому що в URL вони заборонені
У форматі PCRE будь непробельний символ позначається символами \ S
Наші URL: dostavka_v_krym, preimuschestva-aviatsionnogo і інші складаються з багатьох символів (букв і символів підкреслення), тому пишемо в нашому вираженні кількість символів. З цією метою в WPGrabber використовуються фігурні дужки.
Наприклад код \ S означає 8 йдуть підряд символів.
Слово «плагін» описується регулярним виразом \ S, але не потрапляє під вираз \ S, тому що в слові «плагін» саме 6 букв, а не 2.
Також регулярні вирази дозволяють вказувати діапазон символів. Наприклад: \ S це значить все слова довжиною від 3 до 6 символів включно.
Для вказівки мінімальної кількості символів в рядку без вказівки максимального після коми нічого не пише. Наприклад \ S означає, що повинні використовуватися всі слова від 4 символів і більше.
Тепер розберемо варіанти: dostavka_v_krym / або perevalka_gruzov_v_g_ust_kut_s_zhd_st_lena_na_port_osetrovo /. Довжина слів і символів сильно варіюється. Тому переписуємо рядок шаблону так:
Тиснемо «Тест імпорту». Плагін WPgrabber знайшов набагато більше посилань, ніж потрібно. У список посилань потрапили непотрібні нам тексти посилань.
Тому ми використовуємо такий код:
Він означає, що будь-яка одна буква або цифра або більше подібних символів.
Наприклад, під вираз виду:
але, не потраплять, такі рядки:
Отже ми перепишемо наше вираз до такого виду:
Таким чином при імпорті контенту не буде відловлювати непотрібні і некоректні посилання!
Вставте цей код в Шаблон посилань, тисніть «Застосувати» і «Тест імпорту» і плагін видасть на цей раз 14 посилань!
Коли при тесті імпорту записів в Joomla або WordPress в результаті бачимо повідомлення «Знайдено посилань: 0». то це говорить нам про те, що допущена помилка в написанні шаблону посилань WPGrabber. Перевіряйте всі налаштування заново.
Дли інформації нижче вказані керуючі символи виразів формату PCRE.
Коли в регулярному виразі нашого синтаксису варто символ точки (.) Це означає службовий символ, який означає входження будь-якого можливого символу.
Наприклад такий вислів:
значить не тільки: