본문 바로가기
728x90

분류 전체보기139

[Python] 웹크롤링 - 1 (url에서 html태그로 원하는 정보 뽑아내기) 갑자기 카톡알림봇을 만들고 싶었던 차에 구글링도 하고 유튜브 강의를 보고 웹크롤링을 해보았다. 먼저 VSCode를 설치해준다. Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. code.visualstudio.com 여기서 stable로 다운받았다. (운영체제는 본인에 맞는 걸로 선택하기!).. 2021. 5. 2.
컴과생 인턴 41일차 :: SQL과 JS 어제 대기화면이 추가되어서 새로 waiting.jsp와 js파일을 추가했다. 데이터가 없으면 -로 테이블에 나타내줘야 해서 coalesce(컬럼명 :: text, '-') 이렇게 해주었다. 컬럼이 소수점으로 되어있어서 text로 형변환을 해줘야 -이걸로 대체가 된다. 하나하나 coalesce함수를 써줘야해서 이방법밖에는 없나라는 생각이 들었다. 그리고 order by를 쓰면 로딩이 계속 되면서 결과가 안나온다. 언제까지 돌아가나 궁금해서 냅뒀는데 9분동안 계속 로딩중이었다. limit 1로 하면 레코드 하나만 추출되긴하는데 날짜가 제일 최신인 걸 뽑고 싶어서 order by를 썼는데 로딩만 주구장창 되고, MAX를 쓰면 그냥 아무 레코드도 안나온다. window.location.href = '링크'; w.. 2021. 4. 29.
컴과생 인턴 34일차 :: 월차만 기다리는 중 드디어 월차를 쓴다. (다음주에...) 월차쓴다고 말씀드렸다. 하루라니 너무 귀한 것 같다. 오늘은 연구과제를 완성해서 기능 추가를 하지 않고 코드를 좀 수정했다. Controller와 Service를 수정했다. 원래 Service의 메소드에서 조건문으로 필터링하여 설문 이력이 삽입되게 했는데, 그걸 해당 Controller에서 삽입해준다음 Service의 메소드로 넘어가게 했다. 이게 코드 구조상으로 더 좋은 것 같다. 그리고 안드로이드 앱패키징한거에서 404가 뜨는 에러를 해결까진 아니지만 무튼 다시 작동되게 했다. 뭐가 원인인지는 모르겠다. 화면 추가가 새로 있어서 그것도 어느정도 작업을 했다. 하지만 오늘 다 못끝내서 내일 마지막 화면을 추가만 하면 끝난다. 그리고 js파일 임포트해올 때 뒤에 있.. 2021. 4. 20.
컴과생 인턴 33일차 :: 정처기 공부하자 저번주 월요일에 로그인이 안되는 현상을 겪었다. 연구원에서 자동으로 뭘 업데이트한다고 해서 일주일마다 손수 DB를 업데이트 해줘야 한다. 오늘도 역시 그랬다. config_info의 start_week와 end_week를 각각 4/19월요일, 4/25일요일로 갱신해주었다. 이 프로젝트를 하는 동안 매주 월요일마다 해야되는 일이다. 오늘은 설문을 무조건 새로 만들어야 해서 버튼을 누르자마자 이력이 추가되고 설문을 띄우게 했다. 설문이 3개나 이어져있어서 첫번째는 잘되다가 두번째가 안되고 .. 두번째까지 잘되면 또 세번째가 안되고.. 결국 디버깅 끝에 성공했다. 요즘은 디버깅을 굉장히 자주 사용한다. IntelliJ에서는 브레이크포인트를 걸어 F8로 디버깅을 한다. Mapper도 수정하다가 굳이 새로 안만들.. 2021. 4. 19.
컴과생 인턴 27일차 :: 연구과제 화면추가 어제 OJT발표를 무사히 마쳤다. 처음엔 더 많은 분들이 오신다하고 발표도 연기되어 좀 걱정이 됐는데 팀장님만 오셔서 팀장님과 팀원분들 앞에서 발표했다. 질문에 잘 대답을 못한 것 같아 조금 아쉬움이 남는다. 오늘은 연구과제 소스를 보고 프론트를 먼저 해보는 중이다. 이미 되어있는 프로젝트라 더 쉬울줄 알았는데 남의 코드를 이해하는 게 꽤나 어려운 일 같다. -오늘 알게된 점- 위의 태그를 JSP에 넣으면 jstl과 el을 사용하여 서블릿 에러 정보를 가져올 수 있다. javax.servlet.error.status_code 이런 걸로 상태 코드도 보여줄 수 있다. 21.04.09 2021. 4. 9.
컴과생 인턴 25일차 :: 내일 드뎌 발표 오늘도 도착해서 아침에 발표 시뮬레이션을 해봤다. 대본을 70%정도 외운 것 같다. 최대한 대본 안보고 하고 레이저도 멋있게 쏴대야지. 대본 프린트 뽑고 수기로 표시할 거 표시해서 디테일하게 발표 준비를 했다. 프로젝트 시연에서도 어떤 기능을 보여줄지도 정했다. 그리고 다시 연구과제 소스를 켰다. pull할게 있어서 했더니 몇가지 버튼이 생기고 가로 슬라이더가 잘리던게 해결되었다. 3시에 연구과제 변경된 화면설계 설명을 듣고 DB/컨트롤러 등등 고려해서 내가 구현할 부분 설계를 해보았다. 중복되는 화면이 있어 실질적으로 4개의 화면만 구현하면 된다. 근데 테이블이 너무 많아서 DB를 익히고 있다. 오늘 알게 된 것 moment().startOf('isoWeek')format('YYYYMMDD') 그 주의.. 2021. 4. 7.
컴과생 인턴 24일차 :: 소스 소스 아침에 연구과제 화면설계서(확정아님)을 확인하고 다시 소스를 보았다. 설문 부분을 맡았기 때문에 원래 설문 페이지는 어떻게 구성되어있는지 확인했다. 스프링부트 연구과제 소스를 보다가 새로 알게된 점들. -ModelAndView model넣을 수도 있고 (기존에 내가 쓰던 ModelMap처럼) setViewName으로 jsp부를 수 있다. (기존에 return "index"해준 것 처럼) -encrypt : 암호화 -다양한 postgreSQL기능 array_egg : 배열로 만들어줌 EXTRACT(DOW FROM NOW()) : 요일 추출 0~5로 표시됨 date_trunc('week', now())::date 2021. 4. 6.
컴과생 인턴 23일차 :: 연구과제 시작 대본 수정을 한 후 저번에 말씀해주신 예상 질문에 어떻게 답변할지 생각했다. 1. Leaflet을 사용한 이유 -다양한 오픈소스를 사용해보고 싶어서. -Leaflet은 가볍기도 하고 다양한 종류의 지도를 만들 수 있어 익혀보는 게 좋겠다 생각. 2. DB에 저장한 이유/update어떻게 할건지 -이건 아직 생각 못함. 그리고 모바일 버전에 운영요일 글씨 잘리는거 스크롤 추가하여 개선했고, 첫화면에 안내 팝업을 추가했다. 이걸로 사용방법을 알 수 있게 하였다. 미리캔버스를 이용해 간단하게 만들었다. 첫화면에 지도가 덜렁 있으니까 뭘해야할지 모르겠다는 피드백을 받아서 안내 가이드를 띄워 개선해보았다. 오후 5시에 연구과제 설명 듣고 소스를 받았다. 멘탈케어앱인데 전후 변화와 만족도평가 등을 맡았다. DB랑 .. 2021. 4. 6.
컴과생 인턴 22일차 :: 어제 받은 피드백을 오늘 수정보완했다. PPT는 이제 다 완성이 되었고 _최종 _진짜최최최종 할 차례다. 근데 진짜 DB저장한 이유가 뭐냐고 하면 뭐라고 대답해야할지 모르겠다. 나중에 수정되면 다시 업데이트할께요 라고 해야 하나? 발표자료를 수정하면서 느낀 점에 혼자 웹개발 해서 어려웠지만 실력을 향상시킬 수 있었던거랑 개발 도중 변경된 점을 썼다. 그냥 데이터를 ModelMap에 담아서 넘겨주고 그걸 JSTL 이용해서 리스트를 꺼내서 사용했는데, 페이지를 다시 불러오는 거라 화면이 깜빡였는데 이젠 rest controller랑 ajax를 써서 json으로 데이터만 넘겨주었다. 따로 파싱은 안했는데 스프링에서는 자동으로 json형태로 넘겨주는 것 같다. 그리고 결국 영업중 뱃지를 달지 못했다. 이건 영업.. 2021. 4. 2.
728x90