Python 7

[ Dev Dairy ] 007-1. 포켓몬 이미지 크롤링 ( selenium )

요즘 포켓몬 유나이트를 너무너무 재밌게 하고 있어서 그거와 관련된 조그만 프로젝트를 하면 좋을 것 같아서 고민중에 있다. 일단 오늘은 포켓몬 유나이트의 참전 포켓몬을 크롤링해서 이미지들을 다운받는거 부터 시작하려고 한다. 크롤링(crawling) 혹은 스크레이핑(scraping)은 웹 페이지를 그대로 가져와서 거기서 데이터를 추출해 내는 행위다. 소스는 python 으로 되어있고, 패키지는 파이썬에서 웹 브라우저 상호작용을 자동화하는 selenium 을 사용했다. 일단 본인의 크롬버전을 확인하고 그 크롬버전에 맞는 크롬드라이버를 다운받아줘야한다. 크롬 버전 확인방법은 오른쪽상단에 세개의 점 아이콘을 클릭 후, 도움말에서 chrome정보 보기를 클릭하면 확인이 가능하다. 크롬드라이버는 https://chr..

[ Dev Dairy ] 006. 연관어 네트웍크 분석 Networkx 사용해보기

어제 공부했던 textrank 로 했을 때, 결과값이 만족스럽지 않아서 다른걸 찾아보기로 했다. 결과값이 만족스럽지 않다는거는 단어 추출은 잘되는데, 연관된 단어일 경우 분리되서 나와서 하나의 단어로는 그렇게 데이터로써 큰 가치가 없었다. 예를 들면 내가 원하는거는 "성과 창출" 인데 실제로 textrank 를 돌려서 나온값은 "성과" "창출" 각각의 단어로 나오니까 하나의 단어로는 데이터로써 효용가치가 별로 없었다. 그래서 다른 좋은게 있는지 찾아보던중 , NetworkX 를 발견했다. 실제로는 다른분들은 그래프 형식으로 결과값을 도출해서 많이 사용하시던데 내가 원하는건 연관단어들의 텍스트형식의 결과물이었다. NetworkX는 네트워크분석을 기본으로 하고 있고 네트워크 분석은 개인과 집단들 간의 관계를..

[ Dev Dairy ] 005. krwordrank 사용해보기

원래는.. 리뷰들을 모아서 그 리뷰에 대한 긍정적인 부분/ 부정적인 부분을 추려서 프로젝트를 하려고 했다. 기존에 나와있는 긍/부정 감성분석은 리뷰의 평점에 따라 좋은평점에서 긍정적인 단어를 추리고 나쁜평점에서는 부정적인 단어를 추리는 방식이었는데 내가 하고있던거는 미리 긍/부정도 단어사전을 만들고 단어 사전을 통해 긍정/부정을 추출하는 방식이었다. 암튼, 그 긍/부정도에 대해서는 못하게되어 다른 아이디어를 찾고있던 중 .. 발견하게 된거는 krwordrank 이다. text에서 핵심 문장/단어를 추출하는 알고리즘이다. WordRank 알고리즘은 구글의 PageRank 나 HITS 같은 Graph Ranking을 자연어처리에 적용한 알고리즘 이다. 이거를 한국어의 어절 개념을 적용한게 KR-WordRan..

[ Dev Dairy ] 004. Flask API 만들어보기

JSP 단에서 GET 방식으로 요청을 보내고 그걸 Python Flask 로 받아서 처리한 값을 다시 JSP로 돌려주는걸 해보고싶었다. 쉽게 말하면 Flask 로 API를 만들어서 만든 API 에 요청을 쏴서 잘 처리되는지 해보고싶었다. 우선은 간단하게 JSP 에서 ajax 로 get 방식으로 API 호출하는걸 만들었다. JAVA - index.jsp 1 2 3 4 5 6 7 8 9 10 11 12 13 $.ajax({ method: "GET", // url: "https://dapi.kakao.com/v2/search/blog", url: "http://127.0.0.1:8080/plus", // flask 서버로 던진다. // data: { review : ["리뷰1","리뷰2","리뷰3"]} dat..

[ Python ] 장바구니 알고리즘 ( apriori ) 구현해보기 #2

어제 한 내용을 이어서 하자면, 데이터프레임으로 변경을 완료했는데 이 데이터프레임의 내용은 대략적으로 글로 쓰자면 1번째 행은 : JAVA, JSP 2번쨰 행은 : CSS, JAVA, JSP 을 표로 표시한 내용이다. 이제 aprior 알고리즘을 사용해서 어떻게 나오는지 보자 1 2 3 itemset = apriori(df, min_support=0.1, use_colnames=True) itemset print(itemset,'\n') Colored by Color Scripter cs 소스를 돌려보면.. 아래와 같이 값이 나오는데 support에 해당하는 값은 어떻게 나온걸까.. 짱구를 굴려봐도 답이 안나온다.. 이럴땐 구글링! 간단한 샘플을 통한 통계척도 구해보기 역시 구글! 없는게 없다 😄 맞는지..

IT Diary/# Python 2021.07.08

[ Python ] 장바구니 알고리즘 ( apriori ) 구현해보기 #1

연관분석의 대표적인 알고리즘 중 하나인 Apriori를 사용해서 연관분석을 진행해보려고 한다. 장바구니 분석 장바구니 분석은 보통 몇 가지 모델링 기법으로 이루어진다. 판매자들과 전자상거래 사이트에서 일반적으로 사용하는 장바구니 분석과 거래 분석을 통해 소비자들이 가장 많이 사는 제품에 대한 정보와 특정 제품이 가장 많이 팔리는 시기에 대한 정보를 알아내려고 한다. 데이터 기반 의사결정 만들기 장바구니 분석의 결과는 자주 같이 구매되는 아이템 혹은 물건들의 집합이다. 이제 연관도를 향상시키는 강한 지지도, 신뢰도, 향상도로 인해 이런 일들이 가능하고, 소비자들은 그것들을 구매하려 할것이며, 또한 판매자들은 가게나 그들의 웹사이트에 관련 있는 제품들을 같이 진열해 놓을 것이다. 하지만 강한 연관성은 항상 ..

IT Diary/# Python 2021.07.08

[ Dev Dairy ] 001. 개발셋팅하기 ( 구름 IDE )

문득, 개발을 해야겠다고 생각이 들었다. 공부를 다시 시작하려고 하니, 뭐 부터해야할 지.. 뭘 해야할지 막막... 처음부터 개발환경을 셋팅하자니.. 너무 귀찮고 열심히 구글링한 결과 구름IDE가 눈에 띄었다. 구름 IDE는 도커(Docker) 컨테이너를 기반으로 클라우드 서비스가 구성되어있어서 별도의 설정없이 쉽게 사용이 가능!! * Docker 는 나중에 다시 설명할 계획 구름IDE를 들어가서 대시보드 들어가면 본인의 환경에 맞게 셋팅을 할 수 있다. 대시보드를 통해 들어가게 되면 본인이 원하는 소프트웨어 스택을 선택해서 컨테이너를 만들 수 있다. ( 개편해!!! ) 만드는 데 시간이 좀 걸리는데 완성되면 짜잔!! 요렇게 만들어진다. 만들어진 컨테이너에 들어가면 개발환경 셋팅 끝!!! ( 요즘 세상 ..