HighwayToCode
@HighwayToCode
While Учусь do Туплю

Как убрать «перескакивание» первой строки?

Добрый день!

Есть вот такой вот код.
Все отлично работает, вот только я не знаю как пофиксить баг с тем, что цикл перескакивает первую строку и сразу обращается ко второй после фрагмента кода, написанного ниже.
Был бы благодарен за совет без каких-либо серьезных изменений в коде.

Согласно отладчику "перескакивает" он на этом месте:

list_of_line = line.split()

САМ КОД:
path = 'D:\\For_Denis\\Projects\\nginx_log_parser\\big_log.txt'
path_1 = 'D:\\For_Denis\\Projects\\nginx_log_parser\\requests_302.txt'
log = open(path, 'r')
logs_302 = open(path_1, 'w')

method = '"' + (input('Method: ')) 
number_of_request = input('Request: ')

a = 0 
unique_ip = []
request_302 = []
line = log.readline()

for line in log:
    list_of_line = line.split()
    if list_of_line[5] == method and list_of_line[8] == number_of_request:
        a += 1 
        if list_of_line[0] not in unique_ip:
            unique_ip.append(list_of_line[0])
    elif list_of_line[8] == '302':
        if list_of_line[8] not in unique_ip:
            unique_ip.append(list_of_line[0])
            request_302.append(line)
        else:
            request_302.append(line)
    elif list_of_line[0] not in unique_ip:
            unique_ip.append(list_of_line[0])           

str_of_logs_302 = ' '.join(request_302)           
logs_302.write(str_of_logs_302)
print(a)
print()
print(unique_ip)
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
adugin
@adugin Куратор тега Python
Уберите 10-ю строку: line = log.readline()
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы