[221222] 멋쟁이사자처럼 AI SCHOOL 8기 '같이 푸는 Python(심화)' 복습

조세연·2022년 12월 23일
0

멋사 AI SCHOOL 8기

목록 보기
3/35

오늘 강의 요약

  1. 크롤링 프로그램 만들기
  2. API를 활용해 날씨정보 가져오기
  3. 구글 번역 모듈을 활용해 번역기 만들어보기
  4. 메일 전송 프로그램 만들기

복습 내용

1. 크롤링 프로그램 만들기

  • 함수(Function)
    : 반복 작업을 편하게 해주는 것(나무 블록을 조립해주는 기계)
  • 모듈(Module)
    : 자주쓰는 함수를 모아두는 파일 (집을 조립하는 기계, 자동차를 조립하는 기계, 나무를 조립하는 기계 ⇒ 조립키트)

크롤링에서 주로 사용할 모듈과 함수

  • 모듈: request, 함수: get
request.get()
# GET 요청을 보내는 기능
  • 모듈: bs4, 함수: BeautifulSoup
BeautifulSoup(데이터, 파싱방법)

# 데이터: html, xml ← request를 통해 받아옴
# 파싱 방법: html.parser ← 파이썬 내장

2. API를 활용해 날씨정보 가져오기

API란?

Application

Programming

Interface : 두 대상을 연결해주는 것(Client - Server)

API Key란?

API를 사용할 때 누가 API를 사용하는지 방명록을 작성하는데, 이때 개인마다 고유 key를 가짐. 그게 API key.

f-string

: 문자열 안에 원하는 변수를 넣을 수 있게 만듦

city = "Seoul"
apikey = "###########"

api = f"http://api.openweathermap.org/data/2.5/weather?q={city}&appid={apikey}"

json

: str → json으로 바꾸면 type이 dictionary로 바뀜

data = json.loads(result.text)
#result.text를 json 형태로 바꾸어 dictionary 형식으로 data 변수에 저장

3. 구글 번역 모듈을 활용해 번역기 만들어보기

googletrans란?

: 언어 감지/ 번역 모듈(라이브러리)

번역기를 만들기 위해 사용할 모듈과 함수

  • 모듈: googletrans, 함수: Translator
translator = Translator() # 번역기 생성
Translator.translate(text, dest, src)

-text: 번역하고자 하는 문장

-dest: destination. 번역 결과의 언어

-src : (optional) source. 번역 대상의 언어. 언어감지 알아서 해줌

4. 메일 전송 프로그램 만들기

SMTP란?

Simple 간단하게

Mail 메일을

Transfer 보내기 위한

Protocol 약속

SMTP: 내가 메일을 보낼 때 사용하는 프로토콜
IMAP: 내가 답장 메일을 받을 때 사용하는 프로토콜

import smtplib

SMTP_SERVER = "smtp.gmail.com"
SMTP_PORT = 465 # 구글 고유 포트번호

smtp = smtplib.SMTP_SSL(SMTP_SERVER,SMTP_PORT)
print(smtp)

?? 그냥 SMTP 함수를 사용하면 코드가 실행되지 않는 이유 ⇒ 지메일 보안 때문

SSL : 보안을 위한 암호화방식

→ 그냥 SMTP는 SSL을 포함하지 않은 함수. 따라서 암호화방식을 포함하는 함수를 사용해서 메일 서버에 연결해야함.

MIME란?

: 전자 우편을 위한 인터넷 표준 포맷
: SMTP가 알아듣는 MIME 형식으로 만들기 위해

email.message 모듈

.EmailMessage 기능

을 사용함

  • 저작권 보호를 위해 일부 내용 수정 후 업로드하였습니다.
profile
HR Analyst가 되고 싶은

0개의 댓글