: 텍스트를 요약하기에 앞서 바이너리(Binary)와 Base64에 대해 알아 보겠다.
1. 바이너리 파일(Binary file) 이란?
● '0'과 '1' 2진수 데이터만으로 인코딩된 파일이다.
● 데이터 처리에 효율적이지만 사람이 직접 읽을 수 없다.
● 대표적인 확장자 : exe, zip, mp3, jpg, png, dll 등이 있다.
2. Base64 란?
● 다양한 통신채널을 통해 바이너리 데이터를 안전하게 전송할 수 있게 하는 방법이다.
● 화면에 표시되는 ASCⅡ 문자들 써서 표현할 수 있는 가장 큰 진법은 64이다.
: base64, binary, ASCⅡ등 개념이 어렵고 복잡할 수 있다. 간단하게 이야기하면 하나의 문자를 어떻게 표현하는지 그 방식이 다른 것이다. 'A'라는 글자를 1번 사람은 '에이'라고 읽고, 2번 사람은 'A라는 모양의 그림이구나'라고 인식하고, 3번 사람은 '의미없는 낙서'라고 생각할 수 있다. 이 때, 1번 ~ 3번 사람이 각각의 ' base64, binary, ASCⅡ'의 방식이라고 생각하면 된다. 특정 객체를 인식하고 생각하는 방법의 차이인 것이다.
3. 인코딩 디코딩은 왜 하는가?
: 인코딩은 데이터를 압축하거나 형식을 바꿔 저장공간을 절약해준다. 이를 통해 전송시간을 줄이는 데 도움이 된다. 디코딩은 인코딩으로 변환된 데이터를 원래 형태로 돌려 사용자가 알아볼 수 있게 하는 역할을 한다.
4. 바이트 문자열의 인코딩.
: "Hellow world"를 base64로 인코딩할 것이다. base64로 인코딩하기 위해서는 binary 형식이어야한다. 그래서 먼저 ascii로 변환해 binary로 만들어 주고 base64로 인코딩을 진행해야 한다.
import base64
string = "Hellow world"
bstring = string.encode('ascii') # string을 binary로 변경하기 위해 ascii 인코딩한다.
print(bstring)
encode_base64 = base64.b64encode(bstring) # base64로 디코딩한다. 바이너리만 base64 디코딩이 가능하다.
print(encode_base64)
결과
5. 문자열의 디코딩.
: 위에 코드에 이어서 진행한다.
decode_base64 = base64.decodebytes(encode_base64)
print(decode_base64)
결과
'업무자동화' 카테고리의 다른 글
1-06. 텍스트 요약 (gensim 01) (0) | 2024.06.19 |
---|---|
1-05. 텍스트 요약 (collections.Counter) (1) | 2024.06.18 |
1-04. 텍스트 요약 (re) (0) | 2024.06.17 |
1-03. 텍스트 요약 (textwrap) (0) | 2024.06.16 |
1-01. 텍스트 요약 (개요) (0) | 2024.06.10 |