Transcript
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]


Top Related