• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
10.000 вариантов снять квартиру или сам себе POE-риелтор
 

10.000 вариантов снять квартиру или сам себе POE-риелтор

on

  • 1,039 views

YAPC Russia 2009 "May Perl 2"

YAPC Russia 2009 "May Perl 2"

Statistics

Views

Total Views
1,039
Views on SlideShare
1,038
Embed Views
1

Actions

Likes
1
Downloads
3
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    10.000 вариантов снять квартиру или сам себе POE-риелтор 10.000 вариантов снять квартиру или сам себе POE-риелтор Presentation Transcript

    • 10.000 вариантов снять квартиру или сам себе POE-риелтор
    • Вид каталога
    • Идентификатор
    • Подробная информация
    • Паук на POE и драйверная система
    • Структура драйвера { name => 'landlord', url => sub { ... }, url_details => sub { ... }, types => { app_for_sale => 'flat', rent_flat => 'flat', house_for_sale => 'house', rent_house => 'house', }, connection_options => { keep_alive => 0, }, parsers => { count => sub { ... }, details => sub { ... }, items => sub { ... }, }, }
    • 3 функции для разбора собранных страниц parsers => { count => sub { ... }, details => sub { ... }, items => sub { ... }, },
    • 2 Функции для генерации ссылок url => sub { ... }, url_details => sub { ... },
    • Драйвер готов!
    • Основные этапы работы
    • 1. Инициализация Определение количества страниц каталога
    • 2. Сбор каталога Сбор страниц по подготовленным ссылкам
    • 3. Анализ собранных объектов Сравнение объектов в нашей БД и в каталоге-источнике
    • 4. Сбор подробной информации по новым объектам
    • Необычный поиск • Получить идентификатор с помощью LWP::UserAgent • Генерировать ссылки с использованием идентификатора
    • Ошибки в каталогах
    • POE::Component::Client::Keepalive v 0.25
    • Сервера риелторов не выдерживали нагрузок Apache + CGI = 5 запросов одновременно
    • Маленькие радости Отдельное “спасибо” разработчикам, сделавшим параметр «количество объектов на странице»
    • Полуавтоматический режим Меняется представление информации, необходимо постоянно поддерживать работу пауков
    • Спасибо за внимание! Константинов Дмитрий RostovOnDon.pm