728x90

전체 글 503

134일차(모험 43일차) - 프로젝트 집중!

오늘은 팀 프로젝트 프론트와 백엔드 작업에 집중했다. branch를 새로 생성하고 push하려고 하니 아래와 같이 에러가 떴다. (이 전에는 잘 되었는데 왜지?) remote rm origin 으로 삭제를 하고 다시 했지만 동일하게 떴다. 그래서 sign in with your browser로 했더니 되었다. 왜 안된거였지? 나도 프론트 페이지 작성을 위해 이 전에 팀원이 프론트 페이지 작성한 것을 참고해서 하려고 백엔드에 연결하고 실행해봤는데 css가 먹지 않았다. 알고보니 나는 백엔드와 연결해서 수정을 하고 있었는데 팀원은 프론트만 작업을 해서 html에서 js와 css 연결 경로에 static을 넣어두고 했다. 그래서 나는 properties에 static이 기본 경로로 지정이 되어서 static을..

TIL 2022.01.25

19주차 - 이번주 정리

코드로 보여주기 이력서를 쓰면서 내가 어떤걸 해왔고 어떤 프로젝트인지 장황하게 적는 것보다 코드로 한 번에 보여주기 위해서 github repository를 새로 만들어서 정리를 하는 시간을 가졌다. 개인 프로젝트 - 인스타, 쿠팡 최저가 알림 정리 (코드 정리 + readme) 팀 프로젝트 - 3차 프로젝트 정리 (fork + readme 수정) 그 외 - readme 수정 정리할게 너무 많아서 어느 정도 적긴 했는데 계속 추가해야할 것 같다. (특히 3차 프로젝트) 개인 프로젝트는 어느정도 정리가 다 된 것 같다. 이론 학습하기 실제 면접에서 받었던 질문들 정리 모의 면접에서 받았던 질문들 정리 + 답 정리 (spring) spring 기본 흐름 정리 (내가 몰랐던 흐름들이 계속 등장하고 있다. Di..

WIL 2022.01.24

131일차(모험 40일차)

어제 정리한 것에 이어서 정리를 하고 있는데 머릿속으로 합치다 보니깐 헷갈리기 시작했다. DispatcherServlet이 그 요청을 받고 HandlerMapping이 Controller를 찾아주는 건 알았다. 그런데 서블릿 컨테이너의 대표적인 예가 톰캣(Tomcat)이 갑자기 튀어나와서 톰캣은 뭐하는거지? 라는 생각이 들었다. 서블릿 컨테이너(Servlet Container)는 어떤 요청에 대해 어떤 Servlet을 실행할 것인지 제어하는 것이다. (서블릿이 웹서버와 통신할 수 있도록 해준다.) 여기서 클라이언트가 요청을 주면 Servlet Container가 요청을 받는데 이 때 제일 앞에서 서버로 들어오는 모든 요청을 처리하는 Front Controller라는 것을 Spring에서 정의하였고 이를 ..

TIL 2022.01.21

130일차(모험 39일차)

오늘은 모의 면접과 실제 면접에서 나왔던 질문들을 정리했다. 모의 면접에서 대답을 잘 못하는 것 같아서 실제 면접은 잘 볼 수 있을지 나는 왜 모르는걸까 시무룩(?)해하면서 정리하고 있는데 옆에서 멘탈케어를 해주는 캠프분들 덕분에 다시 기운냈다. 😁 면접에서 털리고 왔어도 거기서 끝내는게 아니라 그 답을 나는 찾아가려고 하고 모르겠으면 질문도 하고 정리도 하니깐 꾸준히 하면 되겠지? 어쨌든 정리를 하면서 알게 된건데 spring에서 클라이언트가 요청을 하면 controller에서 그 응답을 받는 것인줄 알았는데 사실은 DispatcherServlet이 그 요청을 받고 HandlerMapping이 Controller를 찾아주고 나서야 내가 아는 흐름대로 진행이 된다고 한다.

TIL 2022.01.20

129일차(모험 38일차) - 쿠팡 알림 봇 출력형식 변경2

이 전에 쿠팡 최저가 알림 봇의 출력 형태를 수정했었다. 현재는 4,000원대 상품이 있으면 5,000원대 상품은 크롤링하지 않고 4,000원대 상품이 없으면 4,000원대 상품이 존재하지 않는다는 메세지와 함께 5,000원대 상품을 띄워주기로 했다. 오늘은 기존에 메모장을 이용하는 대신 리스트를 활용하여 저장을 하였고 이를 활용하여 출력을 시키는 방법으로 변경하였다. 메모장에서 리스트를 활용한 방법은 오래걸리지 않았지만 api를 이용하여 data를 보내는 구조에서 어떻게 반복문을 실행시키는지가 관건이었다. 메모장에 저장을 할 때는 상품명과 링크를 한 줄씩 띄워서 넣었기 때문에 알아서 가독성있게 출력되었는데 리스트는 띄워서 넣는 것이 아니기 때문에 가독성있게 넣기 위해서는 반복문으로 넣어야 했다. con..

TIL 2022.01.20

128일차(모험37일차) - 웹 서버 & WAS

면접 준비를 하면서 웹 서버에 아는게 좋을 것 같아 공부하다가 "WAS와 웹서버의 차이 – 톰캣과 아파치를 구별하지 못하는 사람을 위해" 라는 글을 보고 WAS와 웹 서버의 차이를 이해하게 되었다. 그 과정에서 궁금한게 생겼다. 아파치가 웹 서버(웹 페이지를 사용자에게 전송하는 서버)이고 톰캣이 WAS라고 말하는데 (웹 서버는 정적 데이터를 처리하고 WAS는 동적 파일을 처리) 1, 2차 때 웹 서버는 flask이다. 근데 웹 서버는 정적이라고 했는데 동적 파일은 어떻게 실행이 된걸까 라는 생각이 들었다. 그 궁금증을 튜터님께 여쭤봐서 오늘 해결했다. 🅰️ : flask는 web, was를 같이 지원해주는 형태라서 자바 처럼 tomcat같은 was 서버가 필요없다. 현업에서는 web, was서버를 따로 ..

TIL 2022.01.18

127일차(모험 36일차)

이 전에 이력서를 2개 제출했었는데 오늘은 그 후기를 적어볼까 한다. 하나는 서류 탈락이었고 하나는 면접 후기이다. 서류 탈락했던 회사에서 나에게 메일로 피드백을 주셨다. 먼저, 내가 강조하고 싶었던 강점들을 다 파악하셔서 엄청 꼼꼼히 보신건가 싶었다. 그리고 내가 어떤 점이 아쉬웠는지도 말씀해주셔서 그 부분을 보완해나가야겠다. 면접 후기 면접을 보면서 이론적인 부분은 동기와 비동기 차이 말고는 어떻게 대답했는지도 모르겠다. 질문을 받을 때 이건 뭐지? 했던 부분들도 있어서 까먹지 않게 Github에 정리했다. 신입한테는 언어가 크게 중요하지 않고 어느정도 개념이 잡혀있는지를 파악하신다고 하셨다. 여러 질문들을 많이 해주셨는데 거의 대답을 잘 못했다. 😭 (질문을 거의 15~20개 받은 것 같다.) 동기..

TIL 2022.01.17

18주차

Github 오늘은 트랜잭션을 정리했다. 하나의 작업으로 이루어지는 여러 쿼리들을 트랜잭션 이라는 논리적인 하나의 작업 단위로 묶어서 쿼리들이 한꺼번에 실행되거나 아니면 아무 쿼리도 실행되지 않게 해주는 것이다. [10분 테코톡] 🌼 예지니어스의 트랜잭션 Database Transaction 코드 수정 자동화를 해놓은 코드 중에서 계속 사용하고 있는 코드는 현재 코로나 알림봇이랑 쿠팡 최저가 알림 봇, 인스타 자동화 인데 실행을 해가면서 고쳐나가야 할 부분들이 눈에 보여가지고 앞으로 계속 수정을 할 생각이다. 오늘은 쿠팡 최저가 알림봇을 수정했다. 쿠팡 최저가 봇 - 출력형식 변경

WIL 2022.01.16

쿠팡 최저가 봇 - 출력형식 변경

코드 수정 기존에는 4,000원대와 5,000원대 상품을 모두 보여줘서 크롤링을 진행했었는데 어차피 5,000원대 상품이 있어도 4,000원대 상품이 있으면 4,000원대만 볼 것이기 때문에 현재는 4,000원대 상품이 있으면 5,000원대 상품은 크롤링하지 않고 4,000원대 상품이 없으면 4,000원대 상품이 존재하지 않는다는 메세지와 함께 5,000원대 상품을 띄워주기로 했다. if문과 else문으로 나눠서 실행을 하였고 ture일 경우 실행되는 것을 확인한 후 4,000원대가 없을 경우 5,000원대가 띄워지는지 확인하기위해서 일부러 4,000원대는 없는 상품으로 만든 후에 실행이 잘 되는지 확인했다. if rd : data = {"message": "\n" "{}월 {}일 현재 오그래놀라팝 가격..

Python/Crawling 2022.01.16