본문 바로가기

전체 글229

Python Flask 를 repl.it 에 올려보기 - repl.it 에서 pip 사용하기 파이썬 Python 플라스크 Flask 를 무료로 서비스해보기 위해서 repl.it 에 올려봤어요 아직 아이디 없다면 repl.it 에 접속해서 가입해보세요 가입하고 나면 왼쪽 상단에 생성할 수 있는 버튼이 있어요 New repl 을 눌러서 생성을 진행합니다 생성하는 창에서 왼쪽에 Python 을 선택하고 오른쪽에 이름을 정하고 쓰세요 이름은 나중에 접속하는 주소로 활용됩니다 flask 가 필요하니까 패키지 아이콘을 누르세요 Flask 를 검색하세요 더하기 + 버튼을 눌러서 설치를 진행하세요 오른쪽 검은 화면에 pip 명령어를 이용해서 flask 를 설치하던 것과 비슷하게 실행되는 모습이 보여요 이제 Flask 설치가 끝났어요 패키지 아이콘을 다시 눌러서 목록을 확인해보면 Flask 가 설치된 목록에 보.. 2020. 10. 19.
Python Flask 이미지 파일 다운로드 파이썬 Python 플라스크 Flask 를 이용해서 파일을 다운로드하도록 했는데요 이미지는 다운이 되는 것이 아니라 웹에서 바로 보이는 현상이 있어요 as_attachment 옵션을 이용하면 무조건 다운 받아 지도록 할 수 있어요 return send_file( BytesIO(image_binary), mimetype='image/png', as_attachment=True, attachment_filename=filename) 2020. 10. 18.
Heroku 서비스에서 Selenium Python 크롤링하기 파이썬에서 Selenium 이용하여 크롤링하려면 크롬이 필요해요 노트북에서는 그냥 다운로드하여서 설치하면 되는데 헤로쿠에서 사용하려면 빌드팩을 설정하면 가능합니다 명령어로 할 수도 있는데 웹에서 작업하는게 편하더라고요 Heroku 에서 로그인해서 원하는 프로그램을 선택하고 Settings으로 가면 Buildpacks 부분에서 설정할 수 있어요 파이썬 어플을 만들고 있었다면 heroku/python 이 기본적으로 있을 텐데요 크롬을 설치하기 위해서 Add buildpack을 눌러서 2개를 추가해주세요 # 구글 크롬 https://github.com/heroku/heroku-buildpack-google-chrome ## 크롬 드라이버 https://github.com/heroku/heroku-buildpa.. 2020. 10. 17.
Heroku 헤로쿠 자주 사용하는 명령어 헤로쿠 정말 유용해서 잘 이용하고 있어요 자주 사용하는 명령어 모아 봤어요 우분투에서 헤로쿠 설치하기 명령어가 아예 없다면 한 줄 명령어로 설치하세요 curl https://cli-assets.heroku.com/install-ubuntu.sh | sh 앱 App 생성 하기는 방법입니다 생성하는 빈도가 적어서 웹에서 그냥 하고 있기는 합니다 heroku create myapp --buildpack heroku/python 헤로쿠 명령어는 아니지만 자주 사용하는 git 명령어입니다 git 에 변경했던 내용 등록하는 부분입니다 git add . git 소스 커밋 git commit -am "메모" 소스 반영 - 빌드까지 알아서 척척척해서 배포까지 됩니다 git push heroku master 서비스 강제 .. 2020. 10. 16.
Python Flask Gunicorn Timeout 시간 초과 늘이기 파이썬 플라스크 Python Flask 로 간단한 서비스를 만들었어요 테스트 해보기 위해서 Heroku 헤로쿠에 올렸는데요 특성상 시간이 좀 걸리는 api 가 있는데 시간 초과 time out 나면서 아예 500 오류가 나더라고요 그래서 이 설정을 늘리는 방법입니다 헤로쿠에 올리려면 gunicorn 사용했을 텐데요 옵션을 추가하면 됩니다 Procfile 파일을 열고 수정해주세요 web: gunicorn app:app --timeout 30 일단 30초로 늘렸어요 기본 값이 10초 일 겁니다 2020. 10. 15.
자바스크립트 폼 Form 전송 버튼 막기 - 페이지 전환 방지 form 태그에서 input을 사용하는 상황에서 버튼을 누르면 페이지가 이동하는데요 원하지 않는 경우가 있을 수 있어요 action 을 지정하지 않거나 #으로만 했는데도 페이지가 깜박거리는데요 이것을 방지하기 위한 방법입니다 일단 버튼 type을 submit 가 아니라 button 으로 하기만 해도 효과가 있습니다 추가 안전하게 추가해해줘야 할 작업이 event.preventDefault 를 넣는 것입니다 이렇게 하면 버튼을 눌렀을 때 페이지가 깜박거리며 원하지 않는 동작을 방지할 수 있어요 2020. 10. 14.
Javascript 자바스크립트 버튼 클릭 못하게 막기 자바스크립트 버튼 사용 시 어떤 처리가 진행되는 동안 클릭이 안되게 하고 싶어서요 일단 아주 간단하게 하기 위해 버튼 동작을 아예 막는 코드입니다 // 어떤 처리 중 downloadbutton.disabled = true; // 처리 완료 후 downloadbutton.disabled = false; 이렇게 하면 버튼을 비활성화 했다가 활성화했다가 조절할 수 있어요 2020. 10. 13.
Python Flask 캐시 기능 끄기 한 번 다운로드하였던 파일이 다시 호출하면 빠르게 되어서 좋기는 한데 갱신이 안되더라고요 항상 최신 이미지를 생성해야 하는 서비스라서 캐시를 끄기로 했어요 헤더 정보에 캐시를 사용하지 않는 정보를 넣는 방법입니다 @app.after_request def set_response_headers(response): response.headers['Cache-Control'] = 'no-cache, no-store, must-revalidate' response.headers['Pragma'] = 'no-cache' response.headers['Expires'] = '0' return response 동적으로 이미지를 만드는 서비스인데 이렇게 하니까 항상 새로운 이미지를 만드네요~ 2020. 10. 12.
반응형