728x90
반응형

사용자가 입력한 검색어 정보 가져오기

1️⃣ 임포트 하기

👉 from flask import request

 

2️⃣ 변수에 정보 저장

👉 word = request.args.get("word")

 

main.py

from flask import Flask, render_template, request  #request안을 들여다봐서 키워드 뽑아올 수 있음(request를 임포트 하는 이유)

app = Flask("WebScrapper") 

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

@app.route("/report")
def report():
    word = request.args.get("word")  #word라는 이름의 argument를 가져오기
    return f"You are looking for a {word}"

app.run(host="127.0.0.1")

 

home.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>News Search</title>
</head>
<body>
    <h1>News Search</h1>
    <form action="/report" method="get">
        <input placeholder="Search for a news?" name="word" required>
        <button>Search</button>
    </form>
</body>
</html>

 


 

데이터를 템플릿으로 넘기기

👉keyword=변수명

mian.py

@app.route("/report")
def report():
    word = request.args.get("word")  #word라는 이름의 argument를 가져오기
    return render_template("report.html", searchingBy=word)

 

report.html

<h3>You are looking for {{searchingBy}}</h3>

 


 

검색어가 대문자인 경우 소문자로 변경해주고, 검색어를 입력하지 않은 경우 redirect시키기

from flask import Flask, render_template, request, redirect

@app.route("/report")
def report():
    word = request.args.get("word")  
    if word:
        word = word.lower()
    else:  
        return redirect("/")
    return render_template("report.html", searchingBy=word)

 


 

대문자를 소문자로 변경

word = word.lower()
반응형
복사했습니다!