본문 바로가기

전체 글146

[Heroku] 헤로쿠 가입/설치/사용법 with 파이썬 1. Heroku 1-1. 헤로쿠란? 1-2. 헤로쿠의 장점 1-3. 헤로쿠의 단점 2. 가입 및 설치 2-1. 가입 2-2. 설치 3. 필요한 파일 준비 3-1. Aptfile 3-2. Procfile 3-3. runtime.txt 3-4. requirements.txt 4. 연동 및 배포하기 4-1. app 생성 4-2. 깃허브(GitHub) 연동 5. 실행하기 5-1. 프로그램 실행 5-2. 스케쥴러 이용 6. 관리 6-1. 유용한 명령어 6-2. 환경변수 1. Heroku 1-1. 헤로쿠란? 헤로쿠는 서버를 대체할 수 있는 클라우드 플랫폼이다. 새 물건이 입고됐는지 감시하는 프로그램을 24시간 내내 돌려야 한다거나 내가 만든 웹 사이트를 사람들이 방문할 수 있도록 열어두고 싶을 때 물론 개인용 노.. 2021. 2. 13.
새로운 게시글이 올라왔음을 어떻게 감지할 것 인가? (크롤러 보완 고민 해보기) 1. 새로운 글 감지하기 1-1. 첫 번째 시도 1-2. 두 번째 시도 1-3. 세 번째 시도 1-4. 네 번째 시도 2. 속도 향상 & 사람인 척 하기 2-1. 도움이 되었던 글 2-2. 옵션 추가하기 2-3. 메서드 3. 에러 잡기 3-1. 첫 번째 에러 3-2. 두 번째 에러 1. 새로운 글 감지하기 1-1. 첫 번째 시도 학교 사이트에 들어가면 공지사항이 이렇게 나와있다. 셀레니움을 이용해서 이 페이지의 정보를 수집할 수 있다. 처음에는 게시물 번호를 이용해서 새로운 글이 올라왔는지를 판단해보려고 했다. 지금 가장 최근에 올라온 게시물번호가 '6811'인데 만약 내가 마지막에 확인한 게시물번호가 '6810'이었다면 새로운 게시물이 1개 올라왔다는 것을 알 수 있다. 이 방법을 이용하려고 했는데 종.. 2021. 2. 11.
[학교 공지 알림 앱] 아냥이 프로젝트 최종 결과 1. 앱을 마켓에 등록했다. 2. 앱 자랑 시간 3. 서버도 바꾸었다. 4. 아쉬운 점 5. 문제가 생겼다. (앱 출시를 취소한 이유) 1. 앱을 마켓에 등록했다. 프로젝트를 구상한 날이 12월 30일. 그리고 한 달하고도 일주일이 더 지났다. 사실 2주가 지났을 때 프로젝트 결과입니다 짜잔! 하고 글을 올렸었지만 마켓에 앱을 등록하기에는 부족한 점이 눈에 너무 많이 보였다. 자잘한 버그도 그렇고, UI도 그렇고 서버도 노트북으로 돌린다는 게 큰 문제였다. 그렇게 차근차근 고쳐나가다가... 바로 어제! 드디어 앱을 등록했다!! 세상에나 마상에나 내가 앱을 등록하는 날이 오다니 ㅠㅠㅠ 앱을 실제로 등록까지 해보면서 "아.. 코드를 다 작성했다고 해서 끝나는 게 아니구나..."라는 걸 느꼈다. ANR 뜨는 .. 2021. 2. 6.
파이어베이스 보안규칙 가입 없이 설정하기 (익명 로그인) 1. 데이터베이스 보안규칙 1-1. 규칙을 설정해야 하는 이유 1-2. 익명 로그인(anonymous login) 1-3. 보안규칙 설정 1-4. 코틀린 소스 코드 1-5. 의문점 1. 데이터베이스 보안규칙 1-1. 규칙을 설정해야 하는 이유 파이어 베이스 데이터베이스를 만들면 기본적으로 접근 권한이 true로 설정이 된다. 즉, 누구나 이 데이터에 접근을 할 수 있다는 뜻이다. 그래서 빨리 규칙을 변경하라고 아주 그냥 하루에 한 번씩 독촉 메일이 온다. 지겨워 죽겠어.. 만약 앱을 이대로 출시하면 어떤 또라이 새ㄲ..해커가 내 데이터를 조작할 수 있으니 보안규칙을 변경해주도록 하자. 꼭 해커가 아니더라도 앱 사용자가 아닌 누군가가 내 데이터를 반복해서 read/write 한다면 파이어 베이스 무료 제공.. 2021. 2. 1.
Inconsistency detected. Invalid view holder adapter positionMyNoticeViewHolder (부제: 스크롤을 너무 빠르게 내렸을 때 생기는 문제) 1. 나의 해결법 refreshRecyclerView (새로고침 기능) endlessRecyclerView (목록의 끝에 도달하면 다음 항목 불러오는 기능) 이 두 개를 같이 사용하다가 문제가 생겼다. 새로고침을 한 다음에 스크롤을 빠르게 내리면 앱이 강제 종료가 되어버린다. [Inconsistency detected. Invalid view holder adapter positionMyNoticeViewHolder{38334d0 position=8 id=-1, oldPos=-1, pLpos:-1 no parent] IndexOutOfBoundsException이 떴고 position에 대해 이야기하는 걸 보니 새로고침을 하고 리스트를 로드하는 과정에서 문제가 있는 것 같았다. 실제로도 새로고침을 하지 .. 2021. 1. 27.