본문 바로가기

Data Analysis/FCMM9

FCMM데이터 시각화 fcmm테이블 모델링 hiphan-mansoorrr.tistory.com 모델링한 데이터를 바탕으로 데이터 시각화 및 분석을 진행한다. tableau desktop public을 사용하여 mysql과 커넥션 할 수 없으므로 mysql에서 csv파일로 추출하여 진행하였다. 분석을 위해 추출한 테이블과 파일명 그리고 태블로에서의 관계는 아래와 같다. mysql 테이블명 추출한 파일명 관계(=) category_unique category.csv category_unique.category_code = product2.category_code product2 product.csv category_unique.category_code = product2.category_code review review.csv .. 2023. 7. 18.
fcmm테이블 모델링 스크래핑을 통해 수집한 데이터 구조는 다음과 같다. 처음 table을 만들때에 정확하게 모델링을 하지 않고 시작했기 때문에 동일한 컬럼들이 겹쳐있어 어지럽다. 1. 대분류, 중분류, 소분류 컬럼이 category, product 두개의 테이블에 공통으로 존재한다. category_code만들어서 해결한다. 먼저 category 테이블의 데이터를 조회해본다. 아래와 같이 35개의 데이터가 도출됐다 SELECT * FROM CATEGORY; category segment subsegment 럭키데이 티셔츠 럭키데이 팬츠 베스트 신상품 프로모션 원래 수집했던 테이블은 놔두고 싶기 때문에 category 테이블의 세개 컬럼을 하나의 뭉치로 하는 간단한 category_code컬럼이 만들어진 테이블을 다시 생성한.. 2023. 7. 18.
스크래핑 스크래핑 시작 전 스크래핑의 진행의 구상은 속도면에서 리뷰까지 한번에 가져오는것 보다 나눠서 가져오는것이 빠를것이라는 생각이 들었다. 따라서 category와 product에 들어갈 데이터만 먼저 가져오고(main.py) 이후 review를 가져올 코드를 다시 작성한다.(review.py) 모듈들은 expactor안에 fcmm.py와 mysql.py로 나누어 작성하였다. 스크래핑은 selenium을 활용해 진행하였다. main.py는 category -> segment -> subsegment를 클릭하도록 만들고 이후 product들을 가져오기 위해 더보기를 클릭하였다. 중간중간 time.sleep을 통해 쉬게 해줬다. 데이터는 dictionary형태로 변환하여 가져오고 이를 mysql에 바로 저장시켰다.. 2023. 7. 18.
사이트 분석 fcmm사이트는 들어가보니 럭키데이, 베스트, 신상품, 프로모션, 라이프스타일웨어, 스포츠웨어, 콜라보레이션으로 큰 카테고리가 나눠져 있었다. 카테고리별 segment와 subsegment별로 나누어져 있었다. 이를 정리한 구성도는 다음과 같다. 사이트를 보고 짐작한 것은 럭키박스, 베스트, 신상품 카테고리에는 나머지 카테고리에 속하는 상품을 가지고 뿌려주는것 이었다. 일단 데이터 확보하고 확인. category를 클릭하면 segment가 나오고, segment를 클릭하면 subsegment가 나온다. 이후 물품을 클릭하면 물품에 대한 정보와 댓글들이 확인된다. 그렇다면 데이터는 category, product, review 테이블로 나누어 수집한다. 테이블에 들어갈 컬럼들을 생각해 보니 아래와 같았다... 2023. 7. 18.