-
얼마전 블프 때 스팀 게임을 대량으로 구매했다.. (하지는 못했다.. 게임을 사는 것도 게임이다..ㅠ;) 그러던 와중에 내가 스팀게임을 추천받는걸 만들어보면 어떨까? 라는 생각을 했다.
개인인 내가 얻을 수 있는 데이터 양이 한계가 있으므로 스팀 추천시스템보단 열악하겠지만 굉장히 재미있을 것 같아서 시작해보려 한다 :)
우선 블로그에 글을 마구잡이로 작성한 뒤 성공하면 다시 정리하려한다!
계획
그냥 문득 아래처럼 끄적였다.
고민할게 많았다.
1. 일단 얻을 수 있는 모든 데이터를 얻어야한다! steam api, scraping을 찾아내자.
2. 데이터를 어디다가 저장할 것인가?
=> 데이터의 양을 보고 결정하자
3. 모델은 어떤걸 선택할 것인가? (모델을 하나만 쓸 것인가?)
=> 데이터의 형태를 보고 결정하자
4. 시각화를 진행할 것인가?
=> 시간이 허락해준다면..
아무튼 일단은 데이터를 먼저 확보하는게 급선무였다.
DATA 확보하기
api를 이용한 데이터 확보
우선 기본적으로 아래가 필요하겠다.
1. 게임 정보
2. 게임 리뷰
2. 추천 받을 유저의 정보(..다른 유저들의 정보를 이용할 수 있을지도..?)
스팀은 아래와같이 Web API를 제공해주고 있다.
1. 게임정보
우선 게임 id를 얻어내서 해당 id를 가지고 information을 가져오는 방식으로 해야할 것 같아서 게임 id부터 불러왔다.
아래 GetAppList를 쓸 수 있다.
https://api.steampowered.com/ISteamApps/GetAppList/v2
테스트는 포스트맨으로 진행했다. 문제없이 잘 불러온다.
requset로 받은 데이터의 크기를 보면 초반에 테스트로 있는 것들 제외하면 약 131,876건정도 된다.
2. id를 이용한 게임정보 get
아래 api를 이용하면 id에 해당되는 게임 정보를 가져올 수 있다.
https://store.steampowered.com/api/appdetails?appids=1476090
* 아래처럼 끝에 language를 추가하면 한글로 결과를 returen 해준다! 😁
https://store.steampowered.com/api/appdetails?appids=218620&l=korean
3. 리뷰
아래 api를 이용하면 된다!
http://store.steampowered.com/appreviews/10?json=1&cursor=AoIIPwYYanDTv%2BQB&l=korean
4. 유저 정보
위에 보니까 유저 아이디를 알려주는데 혹시? 역시! 근데 이 api는 authrization key가 필요하다.
https://partner.steamgames.com/doc/webapi/ISteamUser
키는 아래에서 발급 가능하다.
https://steamcommunity.com/dev/apikey
오호홋... 모든게 계획대로 잘되고 있다. 너무 기분이 좋다! :)
우선은 이 정도의 정보로 진행해보려 한다 :) 데이터 수집 경로 define 완료!
나중에 추가로 얻을 수 있는 경로가 있다면 추가해야겠다 ㅎㅎ 우선은 이정도로만!
유저정보에 대해서는 개인정보기때문에 아래 글을 좀 더 면밀히보고 사용해야겠다. ㅎㅎ
우선은 게임데이터로만 !
https://steamcommunity.com/dev/apiterms
추가+
아래에서 api 테스트를 진행할 수 있다. 왕편하다 ㅎㅎ
REFERENCES
https://stackoverflow.com/questions/47601107/getting-all-reviews-from-a-steam-game-using-steamworks
https://github.com/raghavjajodia/steamGameRec
https://medium.com/@isabel.susan.joseph/steam-recommendation-system-5d40fe6a0e26
'2021년 > 21.下' 카테고리의 다른 글
Build a Steam Game Recomend Model (3/?) - 원핫인코딩 (0) 2021.12.27 Build a Steam Game Recomend Model (2/?) - 단순 랭킹으로 추천하기 (0) 2021.12.14 airflow 설치 기록용... (0) 2021.11.05 airflow log가 제대로 안나올 때 (0) 2021.11.05 windows 10에서 ubutu 사용하기 (0) 2021.11.04