Замеры производительности обработки html - PetrovaDaria/software-glitches GitHub Wiki

Сравнить два способа обработки новостей 1) без newspaper, 2) c newspaper

  • Время поиска
  • Сколько текстов найдено
  • Процент валидных текстов из найденных

Перевод текста в массив слов

Специфическая часть обработки:

1) Обработка без newspaper:

  • удалить теги

2) Обработка с newspaper:

  • парсить библиотекой newspaper - выделяет заголовок и текст новости
  • объединить заголовок и текст вместе

Общая часть обработки после специфической:

  • удалить знаки препинания + \n, \t, \s
  • разделить по пробелам на слова
  • удалить пустые слова

Поиск нужных слов в массивах

Есть список слов, обозначающих software, и список слов, обознающих баги.

слова-software слова-баги
software glitch
hardware bug
technology outage
program failure
algorithm issue
package malfunction
technical defect
system error
computer blunder
application problem
device mistake
fix
update

Ищем слова в массиве. Если в одном тексте есть слова обеих категорий, значит, предполагаем, что он нам подходит. Не смотрим, насколько близко друг к другу стоят найденные слова.

Статистика

На примере веб-архива CC-NEWS-20160928074341-00001_ENG.warc.gz были произведены замеры времени работы обоих подходов. Всего было обработано 517 текстов. Из них 505 смогли распарситься библиотекой warcio.

Суммарное время перевода текста в массив слов в секундах

без newspaper с newspaper
5,222 159.738

Медиана и максимум перевода текста в массив слов в секундах

- без newspaper c newspaper
медиана 0,010 0,214
максимум 0,051 5,909

Суммарное время нахождения слов из списков в массивах в секундах

без newspaper с newspaper
0.610 0.0749

Время перевода текста в массив без newspaper всегда быстрее, чем с newspaper. В среднем разница подходов для одного и того же текста составляет 0.306 секунды, что в итоге на 500ах текстах приводит к разнице в 155 секунд.

Время нахождения слов из списков в массивах почти не влияет на суммарное время обработки.

Количество найденных текстов

Стоит заметить, что способ без newspaper всегда будет находить больше текстов, чем способ с newspaper. При этом всё множество текстов, найденных вторым способом, будет содержаться в множестве текстов, найденных первым образом.

без newspaper с newspaper
127 23

Индексы найденных текстов: [15, 20, 42, 56, 60, 67, 69, 77, 112, 133, 147, 229, 233, 261, 277, 280, 289, 396, 402, 477, 478, 484, 511]

Из найденных новостей 3 о технологиях [77, 133, 484], из них 1 отвечает тематике software glitches [484].