본문 바로가기
SpartaCodingClub

개발일지 4주차

by 썬이 2021. 9. 3.

https://www.notion.so/4-682b2d244357441f8469b861562781fc

 

[스파르타코딩클럽] 웹개발 종합반 - 4주차

매 주차 강의자료 시작에 PDF파일을 올려두었어요!

www.notion.so

 

서버는 컴퓨터에서 돌아가는 하나의 프로그램 like 포토샵, 파이참 등

내가 서버를 만들고 내 컴퓨터에서 접속 = local 개발환경

 

 

Flask 시작하기

개발자들은 서버 만들때 대부분 프레임워크 사용

프레임워크 - 남이 짜둔 규칙이나 틀 안에서 내가 자유롭게 코딩

라이브러리 - 내가 내 맘대로 짜는데 남이 만들어 놓은 것을 중간에 가져다가 씀

 

하나의 프레임워크 가져다가 쓰고, 그 안에서 라이브러리 몇개든 넣을 수 있음.

 

내가 서버도 돌리고 내가 접속도 해보고

 

 

http://localhost:5000/

내가 만든 서버의 5000번 문으로 접속하겠다.

포트 port = 5000

 

폴더

static - css나 이미지파일 담아둘 때

templates - html파일 담아두는 곳

 

response = 서버에서 내려준 값

 

 

 


[모두의책리뷰]

제목, 저자, 리뷰 입력하고 리뷰 작성하기 버튼 누르면 아래에 등록!

1. POST - 제목, 저자, 리뷰 정보 저장하기. (Create > POST)

2. GET - 저장된 리뷰를 화면에 보여주기. (Read > GET)

 

 

1. 클라이언트와 서버 확인하기
2. 서버부터 만들기
3. 클라이언트 만들기
4. 완성 확인하기

 


flask

pymongo - db에 저장하기 위해서

requests - 크롤링 하기 위해서

bs4 - beautifulsoup

 

 

API 설계하기

기능 1 - url, 코멘트를 서버에 보내서 서버에서 그 데이터를 저장

기능 2 - 카드들(데이터)을 보여주는 것

db에 이미지. 제목. 요약. 코멘트. 링크(클릭하면 그 링크로 이동)가 저장해야 함!

 

 

 

# meta 태그 스크래핑

meta 태그의 og:image / og:title / og:description로 코딩이 되어있어야

다른 곳에 공유할 때 그대로 그 이미지와 제목, 요약이 예쁘게 보임!

 

meta_prac.py

import requests
from bs4 import BeautifulSoup

url = 'https://movie.naver.com/movie/bi/mi/basic.nhn?code=171539'

headers = {'User-Agent' 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get(url,headers=headers)

soup = BeautifulSoup(data.text, 'html.parser')

title = soup.select_one('meta[property="og:title"]')['content']
image = soup.select_one('meta[property="og:image"]')['content']
desc = soup.select_one('meta[property="og:description"]')['content']

print(title,image,desc)

검사 - console에서 찾을 수 있는 property="og:title"를 가져와서 붙이면 됨!