[서피터의 스파르타 코딩클럽] 4주차

서피터·2021년 8월 13일
0
post-thumbnail

강의 내용

  • 서버
    "컴퓨터에 돌아가고 있는 하나의 프로그램"

    로컬 개발환경 = 컴퓨터가 한 대 임으로 같은 컴퓨터에 서버도 만들고, 요청도하는것. 즉 {클라이언트 = 서버}

  • 폴더 세팅 및 Fask 설치
    sparta > projects > prac > venv > 3.8
    서버를 돌아가게 하는 파일 이름은 통상적으로 app.py 라고 만든다.
    file > setting > interpreter > flask > install
    flask 프레임워크 = 서버를 구동시켜주는 편한 코드 모음

    	from flask import Flask
    	app = Flask(__name__)
    
    	@app.route('/')
    	def home():
    	    return 'This is Home!'
    
    	if __name__ == '__main__':
    	    app.run('0.0.0.0',port=5000,debug=True)

    커서 우측클릭후 'Run app' 하면 실행 성공! (ctrl+shift+f10)

    @app.route('/) 부분을 수정해서 URL을 나눌 수 있습니다!
    url 별로 함수명이 같거나, route('/')내의 주소가 같으면 안됩니다.

  • Flask 시작하기
    기본 폴더 구조
    프로젝트 폴더 안에,
    ㄴstatic 폴더 (이미지, CSS파일을 넣어둔다)
    ㄴtemplates 폴더 (html파일을 넣어둔다)
    ㄴapp.py 파일
    *venv 는 안보인다~ 라고 생각하기

    HTTP request moethod (요청 메소드) 중 GET, POST 다뤄보기!
    GET = 통상적으로 데이터 조회(read)를 요청할때
    ㄴ데이터 전달:URL 뒤에 물음표를 붙여 Key = value로 전달
    ㄴ예: google.com?q=북극곰
    POST = 통상적으로 데이터 생성(Create), 변경(Update), 삭제(Delete) 요청할때
    ㄴ데이터 전달: 바로 보이지 않는 HTML body에 Key:vlaue 형태로 전달

  • Post / GET

    1. 클라이언트와 서버 확인하기
    2. 서버부터 만들기
    3. 클라이언트 만들기
    4. 완성 확인하기
  • 프로젝트 세팅
    *Flask, Pymongo, bs4, requests

  • API 설계하기(나홀로메모장)
    포스팅API - 요청URL = /memo, 요청 방식 = POST
    ㄴ 요청 데이터: URL, 코멘트
    ㄴ 서버가 제공할 기능: URL의 meta태그 정보를 바탕으로 제목, 설명, 이미지URL 스크래핑
    ㄴ (제목, 설명, URL, 이미지URL, 코멘트) 정보를 모두 DB에 저장
    ㄴ 응답 데이터: API가 정상적으로 작동하는지 클라이언트에게 알려주기 위해서 성공 메세지 보내기
    ㄴ(Json형식)'result'='success'

    리스팅API - 요청URL = /memo, 요청 방식 = GET
    ㄴ 요청 데이터: 없음
    ㄴ 서버가 제공할 기능: DB에 저장돼있는 모든(제목, 설명, URL, 이미지URL, 코멘트) 정보 가져오기
    ㄴ 응답 데이터: 아티클(기사)들의 정보(제목, 설명, URL, 이미지URL, 코멘트) > 카드 만들어서 붙이기
    ㄴ(Json형식)'articles':아티클 정보

  • meta 태크 스크래핑(나홀로메모장)
    "og:title"
    title = soup.selectone('meta[property="og:title"]')['content']
    "og:image"
    image = soup.select_one('meta[property="og:image"]')['content']
    "og:description"_
    desc = soup.select_one('meta[property="og:description"]')['content']

소감

4주차도 쉽지 않았다!
휴가 다녀오겠습니다.
오예~

profile
코딩하는 루이형 aka 서피터

0개의 댓글