<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру

PHP и MySQL с Нуля до Гуру

Данный курс - это более 20-ти часов видеоуроков по изучению PHP и MySQL. Ключевой момент курса - это создание движка для сайта с нуля. Каждая строчка комментируется. Практически для каждого урока имеются упражнения. Причём данные упражнения направлены не только на закрепление материала, но и на реализацию реальных задач, встающих перед Web-разработчиками при создании сайтов. После курса Вы сможете без проблем создавать движки для любых сайтов.

Также почти к каждому уроку идут упражнения для закрепления материала.

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

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Как сделать парсер контента на PHP

Как сделать парсер контента на PHP

У многих из Вас возникают вопросы по поводу создания парсера на PHP. Например, есть какой-то сайт, и Вам необходимо получить с него контент. Я долго не хотел писать эту статью, поскольку конкретного смысла в ней нет. Чтобы сделать парсер на PHP, нужно знать этот язык. А те, кто его знает, такой вопрос просто не зададут. Но в этой статье я расскажу, как вообще создаются парсеры, а также, что конкретно нужно изучать.

Итак, вот список пунктов, которые необходимо пройти, чтобы создать парсер контента на PHP:

  1. Получить содержимое страницы и записать его в строковую переменную. Наиболее простой вариант - это функция file_get_contents(). Если контент доступен только авторизованным пользователям, то тут всё несколько сложнее. Здесь уже надо посмотреть, каков механизм авторизации. Далее, используя cURL, отправить правильный запрос на форму авторизации, получить ответ и затем отправить правильные заголовки (например, полученный идентификатор сессии), а также в этом же запросе обратиться к той странице, которая нужна. Тогда уже в этом ответе Вы получите конечную страницу.
  2. Изучить структуру страницы. Вам нужно найти контент, который Вам необходим и посмотреть, в каком блоке он находится. Если блок, в котором он находится не уникален, то найти другие общие признаки, по которым Вы однозначно сможете сказать, что если строка удовлетворяет им, то это то, что Вам и нужно.
  3. Используя строковые функции, достать из исходной строки нужный Вам контент по признакам, найденным во 2-ом пункте.

Отмечу так же, что всё это поймёт и сможет применить на практике только тот, кто знает PHP. Поэтому те, кто его только начинает изучать, Вам потребуются следующие знания:

  1. Строковые функции.
  2. Библиотека cURL, либо её аналог.
  3. Отличное знание HTML.

Те же, кто ещё вообще не знает PHP, то до парсеров в этом случае ещё далеко, и нужно изучать всю базу. В этом Вам поможет мой курс, либо какие-нибудь книги по PHP.

Безусловно, Америки я в этой статье не открыл, но слишком много вопросов по теме парсеров, поэтому этой статьёй я постарался лишь дать развёрнутый ответ.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (6):

rysich rysich 14.01.2014 07:22:03

Первым делом стоит поинтересоваться, есть ли у сервиса, откуда вы хотите доставать данные, специальный API для извлечения данных. Тогда всё значительно проще, надо только отправить запрос на него и прочитать данные. А если нету API, то да, всё как в этой статье.

Ответить

leo_master leo_master 24.11.2015 04:29:02

Ага, так тебе и предоставили, как частному лицу для себя.

Ответить

ivbutusov ivbutusov 30.11.2015 09:53:14

Почему же, на крупных сервисах вроде YouTube и VK выложены руководства по извлечению данных с API, на VK их даже искать не надо, а вот на YouTube они лежат далеко и там не всё на русском, но разобраться можно. Так что можно там обойтись и без шаманств, да и кроме того, некоторые данные можно достать только через API.

Ответить

leo_master leo_master 30.11.2015 10:47:48

В том и дело, что мне не нужен ютуб или вк. Тут надо парсить напрямую с кода. В начале 2000-х я уже делал такое с внесением в базу SQL.

Ответить

ivbutusov ivbutusov 01.12.2015 15:29:46

Значит, мы просто пишем о разных вещах. Но с течением времени даже у многих мелких сайтов будут появляться (или уже появились) встроенные API-сервисы, потому что у них есть приложения для iOS или Android, которые работают через API. Кроме того, такие механизмы есть у крупных CMS, где тоже некоторые данные можно получить либо с API, либо через RSS/Atom. Так что логичнее использовать вещи, которые легче реализовать и которые менее требовательны по ресурсам. Парсинг во многих случаях не обязателен или лучше его комбинировать с теми методами, о которых я написал выше, хотя в вашем конкретном случае парсинг может быть и единственным выходом. Да, и если Вы не нашли, где у сайта API или его описание, это не значит, что его там нет :)

Ответить

leo_master leo_master 24.11.2015 04:20:43

Я давно не занимался программированием в силу других приоритетов. Библиотеку cURL поднял на серваке и попробую на днях пошаманить с бубном. За совет спасибо сразу, а то ломал голову как обойти авторизацию. Просто надоело смотреть где что новое из фильмов появилось. Лично для себя скриптик написать со сбросом на мыло. Вот ссылку на разработчика с мэньюалом могли бы и сразу вписать :)

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.