Парс контент до себе на сайт - АГОС 24 придбати картриджі, радіодеталі в Новосибірську з доставкою по

Парсер контенту: введення

Припустимо, що цікавить нас є на якомусь сторонньому сайті і там же оновлюється. Зрозуміло, можна періодично відвідувати сайт з інформацією, копіювати її звідти і оновлювати у себе на сайті горезвісними: Ctrl + C і Ctrl + V. Але можна і не заходити, а доручити завдання нескладному скрипту - парсеру, який на вимогу: зайде на сайт-донор, знайде і виріже потрібну нам інформацію і відобразить її на нашому сайті. Простіше кажучи, інформація з іншого сайту буде публікуватися на вашому в повністю автоматичному режимі. Якщо перспектива для вас райдужна - читаємо далі.

Я пропускаю роздуми про етичну сторону це справи, торкнемося лише технічної сторони. Також не закликаю нікого використовувати даний метод на шкоду кому б то не було! Розібравшись з технічними нюансами цієї справи, ви зможете згодом приготувати специфічні інформери для свого сайту, надавати своїм користувачам актуальну і затребувану ними інформацію. Тут все залежить від польоту вашої думки!

Отже, пишемо свій скрипт, який заходить на який-небудь сайт, висмикує шматок потрібної нам інформації та публікує його на нашому сайті - як ні в чому не бувало. Ніяких програмістів навичок від вас не потрібно, робимо все попунктно і пробуємо реалізацію на своєму блозі.

Реалізація парсера на PHP

Мабуть, самий відповідальний момент в нашому випадку - це пошук донора, тобто сайту, на якому буде з'являтися інформація, що цікавить нас інформація. Сайт повинен працювати безперебійно, виконувати свої обов'язки по оновленню інформації справно і текст повинен бути відкритий (тобто, відкривши вихідний код сторінки в браузері - ми повинні бачити там цікаву для нас інформацію).

Коли сайт-донор і потрібна нам сторінка для парсинга знайдена, запам'ятовуємо її урл і переходимо до наступного етапу. Створюємо в блокноті текстовий файл, наприклад parser.php і поміщаємо в нього наступний код:

// Визначаємо позицію рядка, до якої потрібно все відрізати
$ Pos = strpos ($ content, 'тут шматок коду / тексту який розміщений перед потрібним текстом');

// Отрезаем все, що йде до потрібної нам позиції
$ Content = substr ($ content, $ pos);

// Точно таким же чином знаходимо позицію кінцевої рядка
$ Pos = strpos ($ content, 'тут шматок коду / тексту який стоїть в кінці потрібного нам тексту');

// Отрезаем потрібну кількість символів від нульового
$ Content = substr ($ content, 0, $ pos);

// якщо в тексті зустрічається текст, який нам не потрібен, вирізаємо його
$ Content = str_replace ( 'текст який потрібно вирізати', '', $ content);

// виводимо спарсенний текст.
echo $ content;

echo "вставляємо сюди завершальний код";
?>

Отже, якісь 8 рядків коду і сторонній контент автоматично публікується на нашому блозі. Червоним кольором в коді позначені місця, які ви обов'язково повинні відредагувати, зеленим кольором - при необхідності. Якщо необхідності немає, то можна просто видалити ці рядки або заборонити їм оброблятися (я про строчки в яких зелений текст) - ставимо перед рядком два слеша - //

Потрібні пояснення до шматків коду / тексту, які обрамляють потрібний нам текст? Тут все просто, ми повинні вказати початкову і кінцеву позицію в тексті, який потрібно парсити. Відкриваємо вихідну сторінку на сайті-донора і шукаємо потрібний нам текст. Як правило, він буде починатися з якою небудь html-розмітки, щось типу цього -

і закінчуватися такий же абракадаброю - наприклад,   . Копіюємо ці символи в початкову і кінцеву позиції (2 і 3 червона рядки). Пам'ятаємо, наш скрипт Спарс текст, який знаходиться між цими позиціями на сайті.

Інтеграція парсеру на PHP в WordPress

Отже, парсер готовий. Його робота протестована, результатом задоволені. Але як показати спарсенний контент на сторінці або в запису wordpress?

Якщо ми вставимо вищенаведений код в запис вордпресс нехай навіть в режимі html, то в цілях безпеки скрипти вордпресс його просто виріжуть - цензура не пропустить.

Попереджаю, що це найпростіша реалізація парсеру на php, але в деяких випадках більшого і не потрібно (для більшості блогерів).

Copyright © 2024