SlideShare a Scribd company logo
1 of 45
Download to read offline
Автоматический сбор
данных по примерам
Сергей Нурк
Разработчик
YaC, Москва, 1 октября 2010 года
План
● Введение
● SinglePage
● Алгоритм
● Итоги
2
Глава 1.
Введение
3
5
6
Вёрстка
Разнообразна Часто изменяется
7
Специализированные
парсеры
На каждый сайт – свой
8
Нужна армия
9
Общие алгоритмы
Предполагают наличие
на странице регулярной
структуры
10
11
MDR
Основные требования
● Простая настройка
● Простая поддержка
● Высокие показатели полноты и
точности
12
Глава 2.
SinglePage
13
Управляемая экстракция
1. Пользователь задает примеры
2. Система автоматически извлекает
данные со всего сайта
14
Взгляд внутрь
1. По примерам строим шаблоны (один
атрибут – один шаблон)
2. Применяем шаблоны к остальным
(подходящим) страницам
15
Гипотетические
преимущества
● Быстрая настройка
● Не требуется разбираться в структуре
страницы
● Структурированное извлечение нужной
информации
● Устойчивость к изменениям вёрстки
(пересоздание шаблонов)
16
Ограничения
● Отдельная страница на каждый объект
● Группа страниц с однотипной вёрсткой
17
Глава 3.
Алгоритм
18
Позиционирование
1. Xpath
2. Шаблон в виде дерева
19
20
21
//ul/li[3]/span
22
23
//ul/li[3]/span
24
//ul/li[3]/span Size=20 quad laser...
TreePattern
25
26
TreePattern
Схема алгоритма
27
● Находим вхождения примеров
● Строим TreePattern, задающий
положение узла
● Применяем TreePattern к
остальным страницам
Построение TreePattern
28
● Начинаем от мест вхождения
примеров
● Синхронно движемся по деревьям,
сравнивая узлы
● Накапливаем TreePattern
Построение TreePattern
29
Построение TreePattern
30 30
Построение TreePattern
31 31
Построение TreePattern
32 32
Построение TreePattern
33 33
34
Проблема
Препятствия
● Сложности с вхождением примеров
● Неправильные страницы
35
Поиск вхождений
36
Множественные
вхождения
4 варианта
Выбираем лучший
37
Фильтрация страниц
38
Применяем
шаблоны
Не
применяем
шаблоны
Все страницы
Глава 4.
Итоги
39
Изменяющийся контент
Изменяется не везде
Хватает информации для формирования
шаблонов
Есть возможность исправить пример
40
Статистика
Время создания < 20 мин
Предварительная оценка качества – несколько
секунд
Полнота: 88% Точность: 92%
success
fail
success
fail
41
Нерешенные задачи
● Несколько объектов на странице
● Хорошая устойчивость к неоднородной
верстке
42
Заключение
Полуавтоматические методы
● По качеству данных и универсальности
сравнимы со сбором «в ручную»
● Сложность и время настройки минимальны
P.S. Экономьте Ваше
время!
43
Вопросы
44
Нурк Сергей
Разработчик
111033, Россия, Санкт-Петербург,
Свердловская наб., д. 44.
sergeynurk@yandex-team.ru

More Related Content

Similar to Сергей Нурк – Автоматический сбор данных по примерам

Борис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ruБорис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ruOntico
 
Владимир Батыгин "Автоматический сбор данных по примерам"
Владимир Батыгин "Автоматический сбор данных по примерам"Владимир Батыгин "Автоматический сбор данных по примерам"
Владимир Батыгин "Автоматический сбор данных по примерам"Yandex
 
Автоматический сбор данных по примерам
Автоматический сбор данных по примерамАвтоматический сбор данных по примерам
Автоматический сбор данных по примерамyaevents
 
Сделай дизайнеру приятно: Красивые веб-формы
Сделай дизайнеру приятно: Красивые веб-формыСделай дизайнеру приятно: Красивые веб-формы
Сделай дизайнеру приятно: Красивые веб-формыKyrylo Melnychuk
 
Квалификационная работа бакалавра (2011)
Квалификационная работа бакалавра (2011)Квалификационная работа бакалавра (2011)
Квалификационная работа бакалавра (2011)Ivan Novikov
 
20111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture320111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture3Computer Science Club
 
Разработка SPA на мультисайтовом highload-проекте
Разработка SPA на мультисайтовом highload-проектеРазработка SPA на мультисайтовом highload-проекте
Разработка SPA на мультисайтовом highload-проектеAndrew Gumenniy
 
JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"
JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"
JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"GeeksLab Odessa
 
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...Tanya Denisyuk
 
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...Iosif Itkin
 
От 40 до 2 секунд
От 40 до 2 секундОт 40 до 2 секунд
От 40 до 2 секундoelifantiev
 

Similar to Сергей Нурк – Автоматический сбор данных по примерам (11)

Борис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ruБорис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ru
 
Владимир Батыгин "Автоматический сбор данных по примерам"
Владимир Батыгин "Автоматический сбор данных по примерам"Владимир Батыгин "Автоматический сбор данных по примерам"
Владимир Батыгин "Автоматический сбор данных по примерам"
 
Автоматический сбор данных по примерам
Автоматический сбор данных по примерамАвтоматический сбор данных по примерам
Автоматический сбор данных по примерам
 
Сделай дизайнеру приятно: Красивые веб-формы
Сделай дизайнеру приятно: Красивые веб-формыСделай дизайнеру приятно: Красивые веб-формы
Сделай дизайнеру приятно: Красивые веб-формы
 
Квалификационная работа бакалавра (2011)
Квалификационная работа бакалавра (2011)Квалификационная работа бакалавра (2011)
Квалификационная работа бакалавра (2011)
 
20111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture320111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture3
 
Разработка SPA на мультисайтовом highload-проекте
Разработка SPA на мультисайтовом highload-проектеРазработка SPA на мультисайтовом highload-проекте
Разработка SPA на мультисайтовом highload-проекте
 
JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"
JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"
JSLab. Григорий Перетяка "Разработка SPA на мультисайтовом highload-проекте"
 
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
 
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...
TMPA-2015: The Application of Static Analysis to Optimize the Dynamic Detecti...
 
От 40 до 2 секунд
От 40 до 2 секундОт 40 до 2 секунд
От 40 до 2 секунд
 

More from Media Gorod

Iidf market watch_2013
Iidf market watch_2013Iidf market watch_2013
Iidf market watch_2013Media Gorod
 
E travel 2013 ufs-f
E travel 2013 ufs-fE travel 2013 ufs-f
E travel 2013 ufs-fMedia Gorod
 
Travel shop 2013
Travel shop 2013Travel shop 2013
Travel shop 2013Media Gorod
 
Kozyakov pay u_e-travel2013
Kozyakov pay u_e-travel2013Kozyakov pay u_e-travel2013
Kozyakov pay u_e-travel2013Media Gorod
 
13909772985295c7a772abc7.11863824
13909772985295c7a772abc7.1186382413909772985295c7a772abc7.11863824
13909772985295c7a772abc7.11863824Media Gorod
 
As e-travel 2013
As   e-travel 2013As   e-travel 2013
As e-travel 2013Media Gorod
 
Ishounkina internet research-projects
Ishounkina internet research-projectsIshounkina internet research-projects
Ishounkina internet research-projectsMedia Gorod
 
Orlova pay u group_290813_
Orlova pay u group_290813_Orlova pay u group_290813_
Orlova pay u group_290813_Media Gorod
 
Ep presentation (infographic 2013)
Ep presentation (infographic 2013)Ep presentation (infographic 2013)
Ep presentation (infographic 2013)Media Gorod
 
Iway slides e-travel_2013-11_ready
Iway slides e-travel_2013-11_readyIway slides e-travel_2013-11_ready
Iway slides e-travel_2013-11_readyMedia Gorod
 
Data insight e-travel2013
Data insight e-travel2013Data insight e-travel2013
Data insight e-travel2013Media Gorod
 
Электронное Правительство как Продукт
Электронное Правительство как ПродуктЭлектронное Правительство как Продукт
Электронное Правительство как ПродуктMedia Gorod
 
Lean мышление / Специфика Lean Startup
Lean мышление / Специфика Lean StartupLean мышление / Специфика Lean Startup
Lean мышление / Специфика Lean StartupMedia Gorod
 
Глобальный взгляд на мобильный мир (Nielsen)
 Глобальный взгляд на мобильный мир (Nielsen) Глобальный взгляд на мобильный мир (Nielsen)
Глобальный взгляд на мобильный мир (Nielsen)Media Gorod
 
Как россияне используют смартфоны (Nielsen)
 Как россияне используют смартфоны (Nielsen) Как россияне используют смартфоны (Nielsen)
Как россияне используют смартфоны (Nielsen)Media Gorod
 
Мобильный интернет в России (MailRuGroup)
Мобильный интернет в России (MailRuGroup) Мобильный интернет в России (MailRuGroup)
Мобильный интернет в России (MailRuGroup) Media Gorod
 

More from Media Gorod (20)

Itogi2013
Itogi2013Itogi2013
Itogi2013
 
Moneytree rus 1
Moneytree rus 1Moneytree rus 1
Moneytree rus 1
 
Iidf market watch_2013
Iidf market watch_2013Iidf market watch_2013
Iidf market watch_2013
 
E travel 2013 ufs-f
E travel 2013 ufs-fE travel 2013 ufs-f
E travel 2013 ufs-f
 
Travel shop 2013
Travel shop 2013Travel shop 2013
Travel shop 2013
 
Kozyakov pay u_e-travel2013
Kozyakov pay u_e-travel2013Kozyakov pay u_e-travel2013
Kozyakov pay u_e-travel2013
 
13909772985295c7a772abc7.11863824
13909772985295c7a772abc7.1186382413909772985295c7a772abc7.11863824
13909772985295c7a772abc7.11863824
 
As e-travel 2013
As   e-travel 2013As   e-travel 2013
As e-travel 2013
 
Ishounkina internet research-projects
Ishounkina internet research-projectsIshounkina internet research-projects
Ishounkina internet research-projects
 
E travel13
E travel13E travel13
E travel13
 
Orlova pay u group_290813_
Orlova pay u group_290813_Orlova pay u group_290813_
Orlova pay u group_290813_
 
Ep presentation (infographic 2013)
Ep presentation (infographic 2013)Ep presentation (infographic 2013)
Ep presentation (infographic 2013)
 
Iway slides e-travel_2013-11_ready
Iway slides e-travel_2013-11_readyIway slides e-travel_2013-11_ready
Iway slides e-travel_2013-11_ready
 
Data insight e-travel2013
Data insight e-travel2013Data insight e-travel2013
Data insight e-travel2013
 
Электронное Правительство как Продукт
Электронное Правительство как ПродуктЭлектронное Правительство как Продукт
Электронное Правительство как Продукт
 
Lean мышление / Специфика Lean Startup
Lean мышление / Специфика Lean StartupLean мышление / Специфика Lean Startup
Lean мышление / Специфика Lean Startup
 
Глобальный взгляд на мобильный мир (Nielsen)
 Глобальный взгляд на мобильный мир (Nielsen) Глобальный взгляд на мобильный мир (Nielsen)
Глобальный взгляд на мобильный мир (Nielsen)
 
Как россияне используют смартфоны (Nielsen)
 Как россияне используют смартфоны (Nielsen) Как россияне используют смартфоны (Nielsen)
Как россияне используют смартфоны (Nielsen)
 
Мобильный интернет в России (MailRuGroup)
Мобильный интернет в России (MailRuGroup) Мобильный интернет в России (MailRuGroup)
Мобильный интернет в России (MailRuGroup)
 
Meta Mass Media
Meta Mass MediaMeta Mass Media
Meta Mass Media
 

Сергей Нурк – Автоматический сбор данных по примерам