Основы написания парсера на php
Расскажу вам о том как написать простенький парсер контента с другой страницы в интернете или просто текстового документа. В том и том случае принцип один и тот же.
Для этого нам нужно знать Регулярные выражения.
Итак для начала нам нужно знать откуда мы будем брать данные и что нам нужно достать.
Данные нам поможет достать универсальная функция file_get_contents().
Пример:
<?php //данная функция может не работать если на другом сервере стоит защита.) $text = file_get_contents( 'http://example.com/' ); //в переменную $text сохраняются все данные echo $text; ?>
Следующий шаг: нам нужно отыскать в тексте нужную нам строчку. Для этого в php (да и в других языках) существуют регулярные выражения.
Пример: нам нужно вытянуть и вывести на экран заголовок страницы.
<?php $text = file_get_contents( 'http://golubovsky.name/' ); preg_match( '/<title>(.*?)<\/title>/is' , $text , $title ); echo $title[1]; // выводим заголовок ?>
Переменная $title – это массив. Первый элемент которого – это вся строка, которая соответствует регулярному выражению, вторая – блоку в скобках.
Возможности регулярных выражений безграничны и не влезут на этой странице, поэтому изучите их самостоятельно. Главный принцип я вам рассказал.
REPLY))
Для начинающих программистов очень полезная статья
REPLY))
Статья отличная! (для начинающих)
Я пользуюсь для парсинга – Simple DOM PHP. (на нем сделан функционал для моего ICQ-бота: 591553009 (wiki))
У меня вопрос. А что сейчас на PHP лучше и проще всех парсит данные других сайтов? Я много искал, но пока или лучше – нет, или я что-то пропустил (не нашел и т.д.)
Спасибо!!!
REPLY))
Лично я все пишу самостоятельно. Ведь у каждого парсера свои условия. Универсализировать такой инструмент очень трудно.
REPLY))
Универсализировать просто невозможно по сути.
REPLY))
Хорошо написано, а то про парсеры для начинающих в интернете совсем информации нет.
REPLY))
Супер статья..как раз нужен парсер
REPLY))
Как все просто кажеться…. нихрена не пойму. А заказть можно простенький парсер? цена вопроса какая?
REPLY))
Думаю нужно приложить больше усилий.
А в чем проблема то? Что парсить нужно?
Советую почитать про регулярные выражения.
REPLY))
Нужен парсер чтоб брал видео и описание с одного сайта и показывал на моем , не вручную вставлять а автоматом
наверно сумбурно ответил
REPLY))
99.9% парсеров именно это и делают )