가수면
Flask 복습 본문
*여러 페이지 만들기*
# 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