프로젝트 시작한 지 3일차, 중간점검으로 회의를 진행했다. 내가 앞서 진행했던 사이트는 한달에 7~8개 밖에 올라오지 않아 구글 뉴스 사이트를 크롤링하기로 했다. 사이트가 바껴서 로직은 조금 수정됐지만 html이 꼬여있지 않아서 수월했다. 셀레니움 사용할 때는 세팅 환경이 거의 고정이다. from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options from selenium.webdriver.common.by import By #크롬 드라이버 자동 업데이트 from webdriver_manager.chrome import..
오늘은 어제 해결하지 못 했던 부분을 해결하고 코드를 리팩토링했다. 먼저, Features지만 뉴스 기사가 아닌 카테고리에 해당하는 Features가 있어 이를 크롤링에서 제외하는 코드를 추가했다. features = driver.find_elements(By.PARTIAL_LINK_TEXT, "Features") for feature in features: # 기사가 아닌 카테고리 features는 제외 if feature.text == 'Features': print(feature.text) continue Features에 해당하는 elements를 전부 읽으면서 text가 Features인지 확인한다. 뉴스 기사일 경우, Features.text에 제목이 포함되어 있고 카테고리면 Features로..
이번 일주일 동안은 지금까지 배운 내용을 바탕으로 작은 프로젝트를 진행한다. 목표는 기본적인 개발환경 구축과 간단한 서비스 제작을 통해 파이썬 프로그래밍 기본역량과 Git/Github 사용법 익히기, REST API와 Django 활용이다. 우리 팀은 가상화폐 뉴스 크롤링과 가상화폐 거래 데이터 시각화라는 주제로 진행하기로 했다. 여기서 내가 담당한 부분은 가상화폐 관련 뉴스를 크롤링 하는 것이였고, 오랜만에 크롤링한다는 점과 깃헙으로 협업 프로젝트를 처음 진행한다는 점에서 많이 막히고 많이 배웠다. 먼저, 셀레니움으로 크롤링을 하기 위해 해당 라이브러리를 import 하고 크롬드라이버 파일을 크롤링 파일과 같은 경로에 설치해두었다. from selenium import webdriver from sel..
이번주 목표는 '파이썬 장고 프레임웍을 사용해서 API 서버 만들기'였다. 장고가 처음이였던 나는 정의조차 처음이라 바로 실습 들어가는 데 많이 헤맸다. 정보 과부화 시대에 유튜브에도 분명 장고 관련 영상이 있을 거라 생각했고 검색해보니 역시나 생활코딩에서 튜토리얼을 다뤘다. 아래의 내용은 생활코딩의 장고로 학습한 내용의 일부이다. django란? 웹 애플리케이션을 만드는데 도움을 주는 도구인 파이썬 장고 웹 프레임워크이다. 파이썬과 html을 다룰 수 있어야 하고 아래와 같은 문제를 겪고 있을 때 유용하다. 페이지가 많아지니까 유지보수 하는 것이 힘들다. 독자들의 투고를 받아서 웹페이지를 만들고 싶다. 사용자마자 다른 웹페이지를 보여주고 싶다. settings.py : 프로젝트 운영에 필요한 setti..
이번 팀미팅의 주제는 파이프라인 트렌드이다. 매일 새로운 기술이 나오는 IT세계에서 최신 트렌드 파악은 필수적이라고 생각했는데 마침 논의 주제로 파이프라인 트렌드가 되어 이번 기회에 조사해보았다. 조사 중 하이퍼스케일러가 ETL 종말을 외친다는 제목을 보고 헐레벌떡 들어가서 정독했다. 읽어보니 공유하면 좋을 거 같아 나의 발표는 이 뉴스로 하기로 결정했다:) 먼저, 하이퍼 스케일러란? 하이퍼스케일 컴퓨팅에서 비롯된 이름으로, 하이퍼스케일 컴퓨팅은 시스템에 대한 수요가 증가함에 따라 소프트웨어 아키텍처가 확장되고 성장할 수 있는 데이터 처리 방법이다. 대규모 클라우드 서비스 공급업체로, 컴퓨팅 및 스토리지와 같은 서비스를 엔터프라이즈 규모로 제공할 수 있습니다. 하이퍼스케일러를 구분하는 보편적인 기준은 없..
소프트웨어 개발의 어려움 요구조건은 계속해서 변화한다. 디자인 시 모든 문제를 미리 알 수 없다. Water-Fall 모델은 소프트웨어 개발에 부적합 요구조건 -> 디자인 -> 개발 -> 테스트 -> 릴리스 -> 유지보수 대규모 프로젝트 일수록 디자인에 걸리는 시간이 길어지며 그 기간 사이에 요구조건이 바뀔 수 있으며 실제 개발에 들어가면 생각치 못 했던 문제들로 디자인을 변경해야 할 수 있음 애자일 개발 아는 만큼 보이는 만큼 만들어 가자! 매 사이틀마다 바로 쓸 수 있는 기능을 구현 짧은 사이클이 특징 (보통 2주) 이를 보통 스프린트(sprint)라고 부름 매 사이클 마다 다음 작업을 반복 작업별로 우선순위 결정 (Backlog Prioritization) 보통 PM들이 수행 이를 Gromming이..