Python: imprime as próximas x linhas do arquivo de texto ao digitar
A situação é a seguinte:
Eu tenho um arquivo .txt com resultados de vários nslookups.
Eu quero loop tru o arquivo e toda vez que ele atinge a string "resposta não-autoritativa:" os scripts tem que imprimir as seguintes 8 linhasde essa posição. Se funcionar, devo obter todos os resultados positivos na minha tela :).
Primeiro eu tive o seguinte código:
#!/bin/usr/python
file = open('/tmp/results_nslookup.txt', 'r')
f = file.readlines()
for positives in f:
if 'Authoritative answers can be found from:' in positives:
print positives
file.close()
Mas isso só imprimiu "Respostas autoritativas podem ser encontradas em:" as vezes que estava no .txt.
O código que eu tenho agora:
#!/bin/usr/python
file = open('/tmp/results_nslookup.txt', 'r')
lines = file.readlines()
i = lines.index('Non-authoritative answer:\n')
for line in lines[i-0:i+9]:
print line,
file.close()
Mas quando eu o executo, ele imprime bem o primeiro resultado na minha tela, mas não imprime os outros resultados positivos.
p.s. Estou ciente de socket.gethostbyname ("foobar.baz"), mas primeiro eu quero resolver este problema básico.
Agradeço antecipadamente!