Project
-
프로젝트 코드 리팩토링Project/공통 사항 2022. 2. 1. 00:47
코드 리팩토링을 통해 어디 내놓아도 부끄럽지 않은 코드를 작성하는 것을 목표로 한다! 이번 졸업 프로젝트를 진행하며 코드 작성 후 바로 코드를 리팩토링하는 것의 중요함을 알게 되었다. 단계별 리팩토링을 진행하며 까먹지 않고 계속 실천하기 위해 정리를 해본다. ✔️ 단계별 리팩토링 1️⃣ lint 적용 lint란 프로그래밍 언어에서 권장하는 코딩 스타일 혹은 코딩 컨벤션이다. lint를 어긴다고 해서 에러가 발생하지는 않지만, lint는 팀원들 간의 코딩 스타일을 통일시켜주고, 잠재적인 에러의 가능성을 줄여준다. *Java top-10-java-linters *Python → PEP8을 일반적으로 권장 → pylint를 사용해 더 엄격한 lint 검사 진행 가능 $ pip install pylint $ p..
-
크롤링한 데이터를 MySQL Docker 컨테이너에 저장하기Project/DEVOOK 2022. 1. 31. 23:52
2022.01.31 - [Project/📚DEVOOK] - Selenium을 사용한 동적 페이지 크롤러 구현 앞서 수집한 데이터를 바탕으로 전처리 및 벡터화 작업을 진행해야 하기 때문에 크롤링한 데이터들을 데이터베이스에 저장하였다. 여러 컴퓨터 환경 및 AWS EC2 서버에서 편리하게 사용하기 위해 Docker Compose로 MySQL 컨테이너를 구성하였다. ✔️모델링 간단하게 url, title, description, category 필드를 가지는 테이블 1개로 구성하였다. ✔️docker-compose.yml 파일 구성 # docker-compose-dev.yml version: "3" services: db: image: mysql container_name: devook-db ports: - ..
-
Selenium을 사용한 동적 페이지 크롤러 구현Project/DEVOOK 2022. 1. 31. 21:05
카테고리 분류기를 학습시키기 위한 데이터를 수집하기 위해 Surfit의 개발 카테고리별 글들의 URL, Title, Description을 크롤링하는 크롤러를 구현하였다. 크롤링한 데이터는 MySQL 데이터베이스에 저장되도록 하였다. ✔️ Selenium을 사용한 이유 Surfit 페이지를 보면 왼쪽 사진처럼 블로그 글이 구성되어 있고, 크롤링할 부분은 파란줄로 표시되어 있는 title과 description 부분이다. Chrome 개발자 도구를 사용해 HTML 구성을 보면, 전체적으로 로 감싸져 있고, 내부에 존재한다. 하나의 글은 혹은 로 감싸져 있고, 크롤링할 title과 description은 왼쪽의 파란줄로 표시되어 있는 , 부분이다. 위의 구성을 보고 처음에는 requests와 Beautifu..
-
Azure 핵심 문구 추출 서비스를 사용한 키워드 추출 테스트Project/DEVOOK 2022. 1. 29. 23:06
*Tistory에 내용을 통합하기 위해 velog에 작성했던 내용을 첨부하였음 https://velog.io/@fordevelop/DEVOOK-%EA%B0%9C%EB%B0%9C%EC%9D%BC%EC%A7%80-%ED%82%A4%EC%9B%8C%EB%93%9C-%EC%B6%94%EC%B6%9C-%ED%85%8C%EC%8A%A4%ED%8A%B8 📚DEVOOK 개발일지 - 키워드 추출 테스트 DEVOOK의 기능 중 사용자가 저장한 블로그 글의 주제에 적합한 키워드를 자동으로 추출하여 글을 분류하는 기능이 있다. 해당 기능 구현을 위해 관련 기술을 조사하고 키워드 추출 테스트를 진행 velog.io