파이썬 스크립트의 결과물을 html에 표현하고 싶어요

조회수 1110회

제가 만든 파이썬 스크립트를 웹사이트로 만들고 싶어요. 구글링을 열심히 해본 결과 flask를 이용하면 가능하다고 들었는데요.

requests, pandas, numpy, pytz와 같은 외부 모듈이 많이 사용되었는데 이것도 flask의 web app 형식으로 변환가능한가요?

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 네. 가능합니다. 질문자님의 스크립트(이하 "스크립트")와 플라스크 튜토리얼(이하 "플라스크")을 나란히 놓고 보시면 아실 수 있어요. 기본 아이디어는, cmd 인터페이스 대신 웹애플리케이션 인터페이스를 쓰자는 것입니다.

    • 스크립트에서의 input()은 플라스크의 request.form['name']에 해당합니다. 스크립트는 cmd 인터페이스가 입력을 기다리지만, 플라스크는 웹 폼이 입력을 받아 서버에 전달합니다.
    • 스크립트에서의 print()는 플라스크의 flash() 또는 render_template()에 해당합니다. "존재하지 않는 닉네임입니다." 같은 에러는 flash()로 찍어주고, get_playerstatistics(username)이 종합해 주는 정상적인 결과는 별도의 html 파일에 데이터를 부어서 템플릿을 렌더링하면 되는 부분입니다. 스크립트는 cmd 명령창을 사용하므로 다 print()를 쓰지만, 웹의 경우에는 사용성을 좀더 개선하려면 에러 경고문과 정상적인 출력 결과를 구분해 사용할 필요가 있지요.
    • 나머지(모듈 불러오기 등)는 거의 다 똑같습니다. 짐작하기로는 스크립트에 있는 2개의 메소드를 잘 합쳐서 @app.route() 라인 밑의 메소드로 정의해 주면 백엔드 작업은 끝날 것 같습니다. return render_template('result.html', userdata=userdata) 같은 걸 만들어서 그림도 넣고 표도 넣고 하면 멋있겠네요.

    시도해 보세요!

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)