가수면

Flask 복습 본문

웹 개발/웹 개발

Flask 복습

니비앙 2022. 10. 24. 17:47

*여러 페이지 만들기*

# http://localhost:5000/
@app.route('/')
def home():
   return render_template('index.html')

# http://localhost:5000/mypage
@app.route('/mypage')
def mypage():
   return render_template('mypage.html')

 

*서버 준비*

1. html 읽어오기

from flask import Flask, render_template
app = Flask(__name__)

@app.route('/')
def home():
   return render_template('index.html')

if __name__ == '__main__':
   app.run('0.0.0.0',port=5000,debug=True)

 

2. Jquery 추가

<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>

 

3.Ajax 추가

<head>
    <script>
        function hey(){
            $.ajax({
                type: "GET",
                url: "/test?title_give=봄날은간다",
                data: {},
                success: function (response) {
                    console.log(response)
                }
            })
        }
    </script>
</head>

 

4. 상단에 request, jsonify추가, app.py에도 get방식 추가

from flask import Flask, render_template, request, jsonify
.
.
@app.route('/test', methods=['GET'])
def test_get():
    title_receive = request.args.get('title_give')
    print(title_receive)
    return jsonify({'result': 'success', 'msg': '이 요청은 GET!'})

주의할 점

반드시 줄 맞춰줘야 함!

onclick="hey()"에서 괄호 빼먹으면 안 됨

 

 

*새로고침*

#            $.ajax({
#                type: 'POST',
#                url: '/mars',
#                data: {name_give: name, address_give: address, size_give: size},
#                success: function (response) {
#                    alert(response['msg'])
		     window.location.reload()

 

 

*조각 기능 먼저 해보는 습관*

아래는 코드는 meta 태그임.

이걸 바로 app.py에 적기보단 아래와 같이 따로 분리해 작성해 제대로 작동되는지 확인 후 붙여넣는 것을 추천

import requests
from bs4 import BeautifulSoup

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

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']

 

 


 

제일 어려웠던 부분인 만큼 1회독할 때 여러번 돌려보며 꼼꼼히 해놨더니 복습 때 어렵지 않았다.

'웹 개발 > 웹 개발' 카테고리의 다른 글

html이동, 페이지 이동  (0) 2022.11.05
JavaScript 기초 문법  (0) 2022.10.25
프론트엔드 복습 (2)  (0) 2022.10.22
프론트엔드 복습 (1)  (0) 2022.10.21
프론트 엔드 (Javascript, JQuery, Ajax)  (0) 2022.10.18
Comments