Дата: января 2, 2010
Категория: PHP
Теги: , , ,  

Основы написания парсера на 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( '/&lt;title&gt;(.*?)&lt;\/title&gt;/is' , $text , $title );
echo $title[1]; // выводим заголовок

?>

Переменная $title – это массив. Первый элемент которого – это вся строка, которая соответствует регулярному выражению, вторая – блоку в скобках.

 

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

10 Comments

  1. НиколайНиколай  
    января 3, 2010
    REPLY))

  2. Для начинающих программистов очень полезная статья

    1F

  3. xmoonlightxmoonlight  
    января 27, 2010
    REPLY))

  4. Статья отличная! (для начинающих)
    Я пользуюсь для парсинга – Simple DOM PHP. (на нем сделан функционал для моего ICQ-бота: 591553009 (wiki))
    У меня вопрос. А что сейчас на PHP лучше и проще всех парсит данные других сайтов? Я много искал, но пока или лучше – нет, или я что-то пропустил (не нашел и т.д.)
    Спасибо!!!

    2F

    Лично я все пишу самостоятельно. Ведь у каждого парсера свои условия. Универсализировать такой инструмент очень трудно.

    3F

  5. dimka3210dimka3210  
    ноября 17, 2010
    REPLY))

  6. Универсализировать просто невозможно по сути.

    4F

  7. Артём АзаровАртём Азаров  
    ноября 28, 2010
    REPLY))

  8. Хорошо написано, а то про парсеры для начинающих в интернете совсем информации нет.

    5F

  9. Создать блогСоздать блог  
    января 29, 2011
    REPLY))

  10. Супер статья..как раз нужен парсер

    6F

  11. chernycherny  
    февраля 15, 2011
    REPLY))

  12. Как все просто кажеться…. нихрена не пойму. А заказть можно простенький парсер? цена вопроса какая?

    7F

    Думаю нужно приложить больше усилий.
    А в чем проблема то? Что парсить нужно?
    Советую почитать про регулярные выражения.

    8F

  13. chernycherny  
    февраля 16, 2011
    REPLY))

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

    9F

    99.9% парсеров именно это и делают )

    10F

Написать ответ

 Имя

 Mail

 Сайт

[Имя и Mail обязательны для заполнения. Mail не будет опубликован.]


 9fce13c8-2714-4603-b8e7-33be6c785d58