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

Post on 28-Nov-2014

903 views 4 download

description

 

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

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

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%

successfail

successfail

41

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

● Несколько объектов на странице

● Хорошая устойчивость к неоднородной верстке

42

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

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

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

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

43

Вопросы

44

Нурк СергейРазработчик

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

sergeynurk@yandex-team.ru