Как я могу извлечь gif-файлы, запрошенные GET-запросом с Http-ответом 200, из журнала? - PullRequest
0 голосов
/ 02 мая 2020

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

unicomp6.unicomp.net ‐ ‐ [01/Jul/1995:00:00:06 ‐0400] "GET /shuttle/countdown/ HTTP/1.0" 200 3985
burger.letters.com ‐ ‐ [01/Jul/1995:00:00:11 ‐0400] "GET /shuttle/countdown/liftoff.html HTTP/1.0" 304 0
burger.letters.com ‐ ‐ [01/Jul/1995:00:00:12 ‐0400] "GET /images/NASA‐logosmall.gif HTTP/1.0" 304 0
burger.letters.com ‐ ‐ [01/Jul/1995:00:00:12 ‐0400] "GET/shuttle/countdown/video/livevideo.gif HTTP/1.0" 200 0
d104.aa.net ‐ ‐ [01/Jul/1995:00:00:13 ‐0400] "GET /shuttle/countdown/HTTP/1.0" 200 3985
unicomp6.unicomp.net ‐ ‐ [01/Jul/1995:00:00:14 ‐0400] "GET/shuttle/countdown/count.gif HTTP/1.0" 200 40310
unicomp6.unicomp.net ‐ ‐ [01/Jul/1995:00:00:14 ‐0400] "GET /images/NASA‐logosmall.gif HTTP/1.0" 200 786
unicomp6.unicomp.net ‐ ‐ [01/Jul/1995:00:00:14 ‐0400] "GET /images/KSC‐logosmall.gif HTTP/1.0" 200 1204
d104.aa.net ‐ ‐ [01/Jul/1995:00:00:15 ‐0400] "GET/shuttle/countdown/count.gif HTTP/1.0" 200 40310
d104.aa.net ‐ ‐ [01/Jul/1995:00:00:15 ‐0400] "GET /images/NASA‐logosmall.gif HTTP/1.0" 200 786

Из приведенного выше примера ответ должен быть:

livevideo.gif
count.gif
NASA-logo.gif
KSC-logosmall.gif

Как видно из ответа, дубликатов нет, например, в строке 6 у нас есть запись count.gif, запрошенная функцией Get, и со статусом 200, то же самое происходит в строке 9 и В ответе у нас только одна запись count.gif.

1 Ответ

0 голосов
/ 02 мая 2020

Попробуйте прочитать файл по одной строке за раз, чтобы извлечь имя файла из каждой строки. Здесь было бы полезно использовать регулярное выражение.

Сохраните имена файлов gif в Set для автоматического удаления дубликатов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...