У меня есть большие файлы трафика, которые я пытаюсь статистически проанализировать, чтобы проверить, нажимает ли пользователь ссылки на определенных сайтах.

Важно сказать, что мои пакеты отсортированы по потокам (IP1 <=> IP2).

Моей первой идеей было просмотреть содержимое пакетов и найти ссылки и ссылки, сохранить их все в какой-то структуре данных со своими отметками времени, а затем снова выполнить итерацию по пакетам для поиска запросов в момент, близкий к моменту появления ссылок. ,

Что-то вроде следующего псевдокода:

for each packet in each flow:
      search for "href" or "http://" or "https://"
      save the links with their timestamp
for each packet in each flow:
      if it's an http request and its url matches some url in the list and the 
         time is close enough, record it

Проблема этого кода в том, что некоторые (важные) ссылки генерируются динамически во время загрузки страницы, и их невозможно найти с помощью вышеуказанного метода.

Другая идея заключалась в проверке поля реферера в заголовке http и поиске пакетов, на которые ссылались соответствующие сайты. Этот метод генерирует много ложных срабатываний из-за фреймов и встроенных объектов.

Важно отметить, что это не мой сервер, и я намерен создать инструмент для статистического анализа поведения пользователей (таким образом, я не могу добавить какой-либо трекер кликов на свой сайт).

У кого-нибудь есть идея, что я могу сделать, чтобы проверить, нажимали ли пользователи ссылки в соответствии с их сетевым трафиком?
Любая помощь будет оценена!
Спасибо

0