52
Автоматический сбор данных по примерам Владимир Батыгин Разработчик Я.Субботник, Санкт-Петербург, 26 февраля 2011

Автоматический сбор данных по примерам

Embed Size (px)

Citation preview

Page 1: Автоматический сбор данных по примерам

Автоматический сбор данных по примерамВладимир БатыгинРазработчик

Я.Субботник, Санкт-Петербург, 26 февраля 2011

Page 2: Автоматический сбор данных по примерам

План

● Введение● Singlepage● Алгоритм● Итоги

2

Page 3: Автоматический сбор данных по примерам

Глава 1.Введение

3

Page 4: Автоматический сбор данных по примерам
Page 5: Автоматический сбор данных по примерам

5

Page 6: Автоматический сбор данных по примерам

6

Page 7: Автоматический сбор данных по примерам

Вёрстка

7

Page 8: Автоматический сбор данных по примерам

Вёрстка

Разнообразна

8

Page 9: Автоматический сбор данных по примерам

Вёрстка

Разнообразна Часто изменяется

9

Page 10: Автоматический сбор данных по примерам

Специализированные парсеры

На каждый сайт – свой

10

Page 11: Автоматический сбор данных по примерам

Нужна армия

11

Page 12: Автоматический сбор данных по примерам

Общие алгоритмы

Предполагают наличие на странице регулярной структуры

12

Page 13: Автоматический сбор данных по примерам

13

MDR

Page 14: Автоматический сбор данных по примерам

Требования

14

Page 15: Автоматический сбор данных по примерам

Требования

15

● Простая настройка● Простая поддержка

Page 16: Автоматический сбор данных по примерам

Требования

● Простая настройка● Простая поддержка● Высокие показатели полноты и точности

16

Page 17: Автоматический сбор данных по примерам

Глава 2.SinglePage

17

Page 18: Автоматический сбор данных по примерам

Управляемая экстракция1. Пользователь задает примеры

2. Система автоматически извлекает данные со всего сайта

18

Page 19: Автоматический сбор данных по примерам

Преимущества

● Быстрая настройка

● Не требуется разбираться в структуре страницы

● Структурированное извлечение нужной информации

● Устойчивость к изменениям вёрстки

19

Page 20: Автоматический сбор данных по примерам

Ограничения● Отдельная страница на каждый объект● Группа страниц с однотипной вёрсткой

20

Page 21: Автоматический сбор данных по примерам

Глава 3.Алгоритм

21

Page 22: Автоматический сбор данных по примерам

Взгляд внутрь1. По примерам строим шаблоны (один атрибут – один шаблон)

2. Применяем шаблоны к остальным (подходящим) страницам

22

Page 23: Автоматический сбор данных по примерам

23

Page 24: Автоматический сбор данных по примерам

Интерфейс

24

Page 25: Автоматический сбор данных по примерам

Построение шаблона

25

Page 26: Автоматический сбор данных по примерам

Построение шаблона

Для каждого атрибута строится отдельный шаблон

26

Page 27: Автоматический сбор данных по примерам

27

Page 28: Автоматический сбор данных по примерам

28

//ul/li[3]/span

Page 29: Автоматический сбор данных по примерам

29

Page 30: Автоматический сбор данных по примерам

30

//ul/li[3]/span

Page 31: Автоматический сбор данных по примерам

31

//ul/li[3]/span Size=20 quad laser...

Page 32: Автоматический сбор данных по примерам

TreePattern

32

Page 33: Автоматический сбор данных по примерам

TreePattern

Homeworld: Size: Weapon:

Corellia 26, 7 meters long quad laser cannons ...

33

Page 34: Автоматический сбор данных по примерам

Построение TreePattern

34

Page 35: Автоматический сбор данных по примерам

Построение TreePattern

35

Page 36: Автоматический сбор данных по примерам

Построение TreePattern

36

Page 37: Автоматический сбор данных по примерам

Построение TreePattern

37

Page 38: Автоматический сбор данных по примерам

38

Проблема

Page 39: Автоматический сбор данных по примерам

39

Проблема

Page 40: Автоматический сбор данных по примерам

Необязательный узел

<h1>

<span>

Driod Control Ship

?

[Target]

40

Page 41: Автоматический сбор данных по примерам

Поиск вхождений

41

Page 42: Автоматический сбор данных по примерам

Множественные вхождения

4 комбинации

Выбираем лучшую

42

Page 43: Автоматический сбор данных по примерам

Применение шаблона к сайту

43

Page 44: Автоматический сбор данных по примерам

Кластеризация

44

Применяем шаблоны

Не применяем шаблоны

Все страницы

Page 45: Автоматический сбор данных по примерам

Глава 4.Итоги

45

Page 46: Автоматический сбор данных по примерам

Статистика

Время создания < 20 мин

Полнота: 88% Точность: 92%

46

Page 47: Автоматический сбор данных по примерам

Happy End?

47

Page 48: Автоматический сбор данных по примерам

Нерешенные задачи

● Динамический контент

● Плагин для браузера

48

Page 49: Автоматический сбор данных по примерам

ЗаключениеПолуавтоматические методы:

● По качеству данных и универсальности сравнимы со сбором «в ручную»

● Сложность и время настройки минимальны

49

Page 50: Автоматический сбор данных по примерам

50

P.S. Экономьте Ваше время!

50

Page 51: Автоматический сбор данных по примерам

Вопросы

51

Page 52: Автоматический сбор данных по примерам

Батыгин ВладимирРазработчик

111033, Россия, Санкт-Петербург,Свердловская наб., д. 44.

[email protected]