로그 파일 (YYMMDD 형식으로되어 있음)이 있는데, 파일에서 중요한 정보 만 가져 오는 스크립트를 만들고 싶습니다 (예 : "O : NVS : VOICE "). 전에 파이썬을 사용 해 본 적이 없으므로 도움을 받으십시오! 당신은 알아야합니다Python이 로그 파일을 읽고 특정 단어를 포함하는 행을 가져옵니다.
답변
이것은 당신이 잘 시작할 수 있어야합니다
infile = r"D:\Documents and Settings\xxxx\Desktop\test_log.txt"
important = []
keep_phrases = ["test",
"important",
"keep me"]
with open(infile) as f:
f = f.readlines()
for line in f:
for phrase in keep_phrases:
if phrase in line:
important.append(line)
break
print(important)
더 완벽한 의미에서 그것은 예를 들어 예외 처리 또는 패턴 일치가없는,하지만 당신은 아주 쉽게에 추가 할 수 없습니다. 구문 검색보다 나은 정규 표현식을 살펴보십시오. 파일이 너무 큰 경우 MemoryError를 피하기 위해 파일을 한 줄씩 읽으십시오.
입력 파일 :
This line is super important!
don't need this one...
keep me!
bla bla
not bothered
ALWAYS include this test line
출력 :
['This line is super important!\n', 'keep me!\n', 'ALWAYS include this test line']
참고 :이 파이썬 3.3입니다. 2.7을 사용하는 경우 print 문 (괄호 제거)을 수정해야합니다.
문제를 피할 수 있습니다 readlines를 호출하는 것이 아니라 파일 객체를 루핑 (looping)하여 대용량 파일을 처리합니다. 그냥'with'안에'for line'을'with' 안에 넣고'f.readlines()'를 제거하십시오. –
방법 loop over files in a directory, regular expressions to make sure your log file format matches to file you are looping over, how to open a file, how to loop over the lines in the open file 및 how to check if one of those lines contains what you are looking for합니다.
그리고 여기에 몇 가지 코드가 있습니다.
with open("log.log" 'r') as f:
for line in f:
if "O:NVS:VOICE" in line:
print line
- 1. 로그 파일에 특정 단어를 포함하는 행에 대해 grep하는 방법은 무엇입니까?
- 2. Python이 JSON 파일을 읽고 수정했습니다.
- 3. Python이 디렉토리에있는 파일을 읽고 연결합니다.
- 4. 특정 단어를 포함하는 파일을 찾기위한 linux 명령
- 5. 파이썬에서 로그 파일을 읽고 특정 텍스트를 출력합니다.
- 6. .txt 파일을 검색하기위한 파이썬 코드. 공백으로 단어를 포함하는 행을 인쇄하십시오.
- 7. Python이 로그 파일을 만들지 않습니다.
- 8. Python이 상대 경로를 가져옵니다.
- 9. R에서 특정 단어를 포함하는 데이터 프레임의 행을 제거하는 방법은 무엇입니까?
- 10. 문자열의 모든 단어를 포함하는 행을 반환하십시오.
- 11. bash 스크립트는 특수 행을 포함하는 하위 폴더에 파일을 가져옵니다.
- 12. grok 패턴이 Logstash의 로그 파일에서 특정 단어가있는 행을 가져옵니다.
- 13. preg_match에서 단어를 포함하는 행을 어떻게 인쇄합니까?
- 14. 특정 단어를 포함하는 sed 라인의 스크립트
- 15. Python이 코멘트에서 잘못된 오류를 가져옵니다.
- 16. 문서를 읽고 해당 문서에서 특정 단어를 찾는
- 17. 열의 특정 단어를 기반으로 특정 행을 삭제하십시오.
- 18. 구성 파일을 읽고 로그 파일을 만듭니다.
- 19. 특정 행을 포함하는 페이지 검색
- 20. 트위터에서 특정 단어를 포함한 모든 트윗을 가져옵니다.
- 21. NLog에서 만든 로그 파일을 읽고 동시에 쓰십시오.
- 22. 한 줄씩 파일을 읽고 단어를 추가하십시오.
- 23. SQL은 브리지 테이블에서 두 행을 포함하는 행을 가져옵니다.
- 24. 특정 순서로 몇 글자를 포함하는 단어를 필터링하십시오.
- 25. 텍스트 파일을 읽고 Python에서 지역 이름을 가져옵니다.
- 26. Linq에 : 특정 어린이를 포함하는 모든 노드를 가져옵니다
- 27. 특정 개체를 포함하는 컬렉션을 컬렉션에서 가져옵니다.
- 28. SQL - 특정 레코드를 포함하는 데이터베이스를 가져옵니다.
- 29. 파일을 읽고 행을 찾을 때 텍스트 쓰기
- 30. 파일에 특정 문자열을 포함하는 행을 찾습니다.
이미 시도한 것과 문제가있는 부분에 대한 아이디어가 필요합니다. 파일을 여는 데 도움이 필요합니까? 거기에있는 데이터를 파싱 하시겠습니까? 관심있는 정보를 인쇄/작성 하시겠습니까? – thegrinner
사실 저는 실제로 파이썬으로 프로젝트를 시작 했으므로 솔루션에 대해 여전히 생각하고 있습니다. 경험이있는 사람들로부터 아이디어를 얻고 싶습니다. 스크립트는 그와 같은 특정 단어를 얻는 것을 목표로합니다. 서버에 의해 매일 생성되는 로그 파일에서 말한 다음 mysql 데이터베이스에 저장하여 많은 수의 행을 얻을 수있는 방법을 모릅니다. 따라서 매일 생성됩니다. –