on
[노마드 코더] Python으로 웹 스크래퍼 만들기 #4.0~4.3 공부-1
[노마드 코더] Python으로 웹 스크래퍼 만들기 #4.0~4.3 공부-1
728x90
이번 글에서 부터 우리가 할 것은 <지금까지 만든 웹스크래퍼를 웹 서버에 넣는 작업> 이다.
목표: 기본적으로 누구나 접근 할 수 있는 웹사이트 생성, 그들이 python, go, java등을 검색하면 그 언어에 해당하는 직업을 보여준다.
파이썬으로 웹을 만들기 위해 Flask를 사용할 것이다.
파이썬으로 웹사이트를 만들수 있게 해주는 micro-framework 이다. 여기서 micro의 뜻은 "프레임워크를 간결하게 유지하고 확장할 수 있도록 만들었다" 라는 의미이다
repl.it에서는 packages에 들어가서 Flask 검색만 하면 설치를 간단하게 완료할 수 있다.
<패키지 import 및 시작>
- @=데코레이터, 바로 아래에 있는 함수를 찾아 decorate 해주는 역할을 한다.
[email protected]("/") : URL에서 /를 통해 경로를 구분하게 되는데 슬래쉬가 달랑 하나만 있다면 그것은 메인주소를 의미한다.
따라서 밑에 있는 home() 함수를 실행하게 되면서 메인주소에서는 "Hello! Welcome to mi casa!" 문자를 볼 수 있다.
[email protected]("/report"): 기본 주소에서 /report 를 추가해서 주소를 검색했을때 report() 함수를 웹페이지 에서 실행하게 된다.
(굳이 /report랑 함수이름을 통일시켜야지만 작동하는 건 아니다.)
-app.run(host="0.0.0.0"): repl.it이 이 사이트를 공개하고 싶구나 알수 있게하는 코드
메인 홈페이지
/report를 추가해서 검색하면 @app.route("/report") 밑에 함수가 실행된다.
/report 추가
Dynamic Url이란 입력값에 대해 동적으로 반응하는 URL을 의미한다.
from flask import Flask app=Flask("SuperScapper") #앱 이름 @app.route("/") def home(): return "Hello! Welcome to mi casa!" @app.route("/") #꺽쇠 부분은 placeholder def potato(username): return f"Hello {username} how are you doing" app.run(host="0.0.0.0")
< >는 placeholder로 괄호안에 있는 URL을 변수로 가져온다. placeholder 사용시 함수 argument에서 이를 반드시 받아주어야 한다.
이를 통해 서로다른 URL들을 제어할 수 있다.
HTML을 통해 웹 페이지에서 사용자에게 더 많은 것들을 제공 할 수 있다.
프로젝트 안에 'templates' 라는 폴더를 만든후 아무런 이름으로 html을 하나 생성한다.
Job Search Job search Search
html 파일을 main으로 넘겨주기 위해서 render_template를 import 해주어야 한다.
from flask import Flask, render_template app=Flask("SuperScapper") #앱 이름 @app.route("/") def home(): return render_template("potato.html") app.run(host="0.0.0.0")
<현재 웹 화면>
from http://hiyoonhyuck.tistory.com/39 by ccl(A) rewrite - 2021-03-11 20:26:31