OP.GG 롤 전적 데이터 크롤링
얻고자 하는 데이터 : 레드팀 챔피언(5가지), 블루팀 챔피언(5가지), 승패

op.gg 페이지 파악
먼저 어디를 어떻게 크롤링해야할지 설계 하였다. 진행하다 보니 꽤나, 복잡하게 진행하게 되었다.
개발자 도구(F12)를 열어 Network탭의 전송되는 데이터를 보려고 했는데 Json으로 주고받는게 아니라, HTML이 넘어왔다.....


수집해야할 데이터
op.gg 페이지를 분석한 결과, 다양한 요소들을 발견했다.
- summonerId - 해당 소환사의 ID값
Ex. Hide on Bush - 4460427 - gameId - 게임마다 ID값 부여
URL - https://www.op.gg/summoner/matches/ajax/detail/gameId="게임ID값"&summonerId="소환사ID값"
gameId 데이터 수집
자 그럼, gameId는 어디서 수집하냐
확인해본 결과, op.gg에는 소환사 한명 검색 결과. 총 20개의 게임이 나오고, "더 보기"를 통해 동적으로 20게임씩 늘어나는 방식이다.
- 개발자 도구(F12) - Network 탭을 확인해본 결과 게임에대한 정보가 Json형식으로 주고받음을 알 수 있었다.

20게임 데이터 예제
https://www.op.gg/summoner/matches/ajax/averageAndList/startInfo=1621959005&summonerId=58820334
위의 URL의 summonerId의 값은 소환사의 ID값을 의미하고, startInfo의 값은 분석했을 때 해당 소환사의 게임리스트의 순서를 의미하는 것 같았다.
※ startInfo의 값에 특정한 규칙이 없어..이부분은 하나하나 수집해야 하는 부분이 번거롭다.
(롤에서 API도 무료로 지원하니 API사용도 적극 추천합니다.)
StartInfo가 생성되는 특정 규칙은 아무리 찾아도 없더라...그래서 더 보기 눌러가며 수집함

※ 수집한 값들 예제로 올리겠습니다. 21년 06월 기준 데이터라 특정기간이 지나면 없는 페이지로 나올 수 있습니다.
'머신러닝 > 머신러닝 프로젝트' 카테고리의 다른 글
#2-2 롤(LOL) 게임 데이터 요소를 이용한 승리예측 - [머신러닝 프로젝트] (4) | 2021.07.05 |
---|---|
#2-1 롤(LOL) 라이엇 API사용하여 롤 데이터 크롤링(API사용) - [머신러닝 프로젝트] (0) | 2021.07.05 |
#2 롤(LOL) 챔피언 조합 데이터 크롤링(OP.GG 크롤링) - [머신러닝 프로젝트] (0) | 2021.06.07 |
OP.GG 롤 전적 데이터 크롤링
얻고자 하는 데이터 : 레드팀 챔피언(5가지), 블루팀 챔피언(5가지), 승패

op.gg 페이지 파악
먼저 어디를 어떻게 크롤링해야할지 설계 하였다. 진행하다 보니 꽤나, 복잡하게 진행하게 되었다.
개발자 도구(F12)를 열어 Network탭의 전송되는 데이터를 보려고 했는데 Json으로 주고받는게 아니라, HTML이 넘어왔다.....


수집해야할 데이터
op.gg 페이지를 분석한 결과, 다양한 요소들을 발견했다.
- summonerId - 해당 소환사의 ID값
Ex. Hide on Bush - 4460427 - gameId - 게임마다 ID값 부여
URL - https://www.op.gg/summoner/matches/ajax/detail/gameId="게임ID값"&summonerId="소환사ID값"
gameId 데이터 수집
자 그럼, gameId는 어디서 수집하냐
확인해본 결과, op.gg에는 소환사 한명 검색 결과. 총 20개의 게임이 나오고, "더 보기"를 통해 동적으로 20게임씩 늘어나는 방식이다.
- 개발자 도구(F12) - Network 탭을 확인해본 결과 게임에대한 정보가 Json형식으로 주고받음을 알 수 있었다.

20게임 데이터 예제
https://www.op.gg/summoner/matches/ajax/averageAndList/startInfo=1621959005&summonerId=58820334
위의 URL의 summonerId의 값은 소환사의 ID값을 의미하고, startInfo의 값은 분석했을 때 해당 소환사의 게임리스트의 순서를 의미하는 것 같았다.
※ startInfo의 값에 특정한 규칙이 없어..이부분은 하나하나 수집해야 하는 부분이 번거롭다.
(롤에서 API도 무료로 지원하니 API사용도 적극 추천합니다.)
StartInfo가 생성되는 특정 규칙은 아무리 찾아도 없더라...그래서 더 보기 눌러가며 수집함

※ 수집한 값들 예제로 올리겠습니다. 21년 06월 기준 데이터라 특정기간이 지나면 없는 페이지로 나올 수 있습니다.
'머신러닝 > 머신러닝 프로젝트' 카테고리의 다른 글
#2-2 롤(LOL) 게임 데이터 요소를 이용한 승리예측 - [머신러닝 프로젝트] (4) | 2021.07.05 |
---|---|
#2-1 롤(LOL) 라이엇 API사용하여 롤 데이터 크롤링(API사용) - [머신러닝 프로젝트] (0) | 2021.07.05 |
#2 롤(LOL) 챔피언 조합 데이터 크롤링(OP.GG 크롤링) - [머신러닝 프로젝트] (0) | 2021.06.07 |