반응형
여러파일을 번역하다 귀찮아서 파이썬으로 간단하게 테스트 코드를 만들어보았다. (필자는 pycharm editor으로 사용)
파이썬 2020년 1월 최신버전인 python3 3.8.1 버전 사용.
텍스트파일에 영어가 들어있으면 이를 한글로 파파고 번역기를 이용해서 번역하는 것이다.
이를 위해 pypapago 라는 라이브러리를 다운로드 해줘야 하는데
window cmd창에서
>pip install pypapago
를 다운로드 해주면 된다.
아래는 pypapago 라이브러리 관련 사이트다.
https://pypi.org/project/pypapago/
유명한 엔지니어 포럼 stack overflow의 글귀를 텍스트에 넣어보고 번역해보았다.
그리고 실행시켜보았다.
저 오류가 왜 발생할까 오랜 연구 끝에... 문제는 엔터키(\n) 존재 유무에 따라 발생한다.
고로 엔터키를 없애줘야 한다.
아래처럼 수정
그러면 아래와 같이 성공적으로 번역이 된다.
또, 번역된 내용을 afterTranslate.txt 파일로 자동으로 저장했다.
프로그램을 실행시키면 자동으로 번역하여 해당 파일을 생성한다.
내용을 확인해보면, 아래와 같이 성공적으로 번역되었음을 알 수 있다.
그러면 다음 과제는 엔터키(\n) 문자열을 발견했을때, 어떻게 처리할지에 대해 코드를 작성해보면 저런 오류 걱정없이 사용할 수 있을 것이다. 나중에 작성할 예정이다.
아래 소스코드
'''
파파고를 이용한 파일 내용 자동번역 코드
made by 안산드레이아스
https://ansan-survivor.tistory.com/
설치파일
pip install pypapago
'''
from pypapago import Translator
# 불러올 파일명 입력(동일 디렉터리 위치)
fileName = './test.txt'
# 객체 할당, 번역할 파일 열기
translator = Translator()
with open(fileName, encoding='utf-8', errors='ignore') as f:
# 줄을 읽어 저장, byte를 string으로 디코딩
line = f.readline()
print(line) # 파일 내 텍스트 출력
print(type(line)) # 텍스트 타입 출력
# 번역할 문자를 입력
forTranslateString = line
# 번역하기 (\n(엔터) 이나오면 오류 발생 문자열 처리 필요) english -> korean 옵션
result = translator.translate(forTranslateString, source='en', target='ko', verbose=False)
# 결과 출력
print(result) # 번역된 텍스트 출력
with open("afterTranslate.txt", 'w') as f: # 번역 완료된 텍스트 저장
f.write(result)
https://ansan-survivor.tistory.com/78?category=368248
반응형
'파이썬(python)' 카테고리의 다른 글
[Python OpenCV] 파이썬 이미지에서 원형(circle) 인식 (0) | 2020.09.17 |
---|---|
파이참(Pycharm) 프로그램 단축키 (0) | 2020.03.28 |
파이썬으로 엑셀 만들고 관리 하기 (0) | 2020.03.22 |
Pycharm(파이참)을 이용하여 Python 개발환경 구축하기 (0) | 2020.03.22 |
텍스트 파일 읽어와서 변역시키는 프로그램 (네이버 파파고, 파이썬 코딩) (9) | 2020.01.10 |