@app.route를 통해서 url을 열고 gamesearch
함수를 통해서 제일 메인페이지인 index.html을
실행을 합니다.그리고 2번째 페이지인 infor.html을
엽니다.앞에서 게임 이름을 검색을 하였습니다.
게임 이름을 받는 메소드 방식이 post이므로
if문으로 post 방식이라는 걸 확인 하였습니다.
if문 아래에 있는 코드들은 메타크리틱이라는 사이트에서 셀레니움을 통해
크롤링 하는 코드입니다.이 코드는 제가 설계하지 않아서 따로 해석을 하지는
않겠습니다.그리고 밑에 또 크롤링이랑 firebase에 저장하는 코드들도 있습니다.
마찬가지로 해석하지 않겠습니다.
^ index.html ^ infor.html
위에서는 생략되어 있지만 셀레니움에서 크롤링을 통해서 게임
평점이라던지 할인정보등을 알아 났습니다.그 정보들을 html
에서 나타내기 위해서는 render_template을 통해서 template
이라는 폴더중에서 infor.html에서 게임이름,게임에 대한 평가
점수,할인을 한다면은 스팀에서의 할인 정보등을 페이지에
보냈었습니다.
그리고 게임에 대한 비평을 할 수 있는 공간인
criticize.html 파일을 열어서 사용자가 비평을 합니다.
그리고 사용자가 값을 입력을 하여서 받기 때문에 메소드
방식이 post가 와야 합니다. 그다음에는 방금 비평
페이지에서 비평을 한 후에 비평했던 값들을 form태그
안에 있는 input의 각 id에서 값을 가져와 firebase에
있는 파일에 변수에다가 값을 저장하고 따로 html에서도
값을 표시를 해줘야 하기 때문에 또 다른 변수에다가
저장을 합니다.
계속해서 비평했던 값들을 firebase에 있는 변수에다가 저장을 한 후에 방금 전처럼 firebase에 있는 값들에
저장되고 여기 캡처한 사진에서는 안 보이지만 위에서 firebase DB에다가 보내고 나서 HTML에게 값을 보내주고 코드를 끝냅니다.
비평 할 수 있는 페이지 중에서 일부만 코드를 가져와 보았습니다.
이 코드는 왼쪽에 보시면은 조절 창이 있습니다.조절 창으로
1부터 9까지 값을 주었으며 1만큼 증가하는 걸 확인 할 수
있습니다.위에서 input에 있는 id를 a,b,c...등등 쉽게 식별하게
나타 내었습니다.
그 외에도 체크 박스 형태로 비평할 수 있는 란이 있습니다.만약에 사용자가
체크 박스를 선택한다면은 1이 파이썬 파일에 저장이 됩니다. 박스를 선택하지
않는다면은 0이 파이썬 파일에 저장되어서 사용자가 이 장비를 선택을 안 한 것을
알 수 있습니다.
^ 비평 할 수 있는 페이지
비평 결과 페이지 입니다. 지금 화면에서는 중괄호로 변수명이 감싸져 있는
보실 수 있습니다.(저 화면은 지금 HTML만 구성하였고 실행 시킬때 화면은
아닙니다.)저 중괄호의 의미는 Jinja 문법을 의미를 합니다.
render_template을 통해서 Python에서 HTML에서 쓸 수 있도록 반환해
준 후에 HTML에서 변수를 쓸 때 Jinja 문법을 사용합니다. 그래서 지금
화면에서는 방금 비평한 것에 대한 변수들을 나타내는 것입니다.
영재원 때 처음으로 HTML ,CSS를 접해보았습니다. 그때 저는
처음으로 프로그래밍이 게임보다 더 재미있다는 것을 느꼈습니다.
결과가 바로바로 나오고 파이썬과 다르게 5분 정도 배우고 쳤는데
홈페이지의 구조가 보여서 파이썬 보다 더 재미있고 보람차다고
생각을 하였습니다.
HTML은 팀 버너스리가 1989년에 개발하였습니다.HTML은
Hyper Text Markup Language의 줄임말 입니다.
HyperText(웹 페이지에서 다른 페이지로 이동할 수 있도록
하는 것) 기능을 가진 문서를 만드는 언어입니다. 구조를 설계할
때 사용되는 언어로 hyper link 시스템을 가지고 있습니다.
CSS는 1994년 하콤 비움 리라가 처음으로 제안을
하였습니다.CSS는 Cascading Style Sheets의 약자이며
웹페이지에서 시각적으로 표시를 해주는 기능을 가지고 있습니다.
CSS는 문서의 내용과 표현을 분리하여 CSS 파일 하나만 수정하면
스타일에 해당하는 HTML 문서가 한 번에 수정되는 장점을 가지고
있습니다.
^ 팀 버너스리
^ 하콤 바움리
영재원에서 웹사이트를 구축을 하였는데 프론트엔드를
제가 맞아서 제작을 하였습니다.그리고 포트폴리오도 제가
html , css를 이용하여서 제작을 하였습니다.