2024-09-25 개인프로젝트 26일차 - 경기일정 / 결과 크롤링

소비자우롱차·2024년 9월 25일

📅 2024-09-25 개인프로젝트 26일차 - 경기일정 / 결과 크롤링

TODO

  1. 경기일정 / 결과 크롤링

1. 경기일정 / 결과 크롤링

  1. 아래사진은 크롤링할 페이지!
  2. HTML 분석과정
  • HTML 뜯어서 분석해보니까 월 선택 드롭다운으로 01 ~ 12월까지 '월'을 선택해야하고, 경기일정 / 결과 나오는 테이블이 class가 tbl-type06인 div로 감싸져있었다.
  • 각각의 경기일정 / 결과는 table 태그의 tr 태그에 들어가 있는 것을 확인했고, 날짜는 첫번째 tr태그의 첫번째 td태그에 들어가 있다는 것을 확인 (아래 사진 처럼)
  • 일단 모든 tr 태그의 td 태그의 값을 가져와야 한다는 것도 확인
  1. 로직 구성 과정
  • 일단 월 선택 드롭다운에서 크롤링할 '월'을 선택한 후 경기일정 테이블을 찾고 테이블의 모든 행(tr 태그)을 추출해야하기 때문에 아래와 같은 로직 구성
  • 데이터를 저장할 ArrayList를 생성하고 날짜를 저장할 변수 선언
  • 각각의 tr 태그(행)를 반복하며 추출하면서 각 행의 td(셀)를 추출하여 저장하여야 하기 때문에 셀 데이터를 저장할 ArrayList 생성하고 각 셀의 텍스트를 저장
  • 날짜 데이터 09.04(수)와 같이 ')'로 끝나므로 조건문을 활용하여 날짜가 있는 경우와 없는 경우를 나누어 로직을 구성해야한다.
  • JSON 파일로 만들기 위한 로직
  • 크롤링 성공하면 브라우저를 종료하고 페이지에 '1'을 띄우는 로직
  1. 잘 된다!

  2. 단점.. 크롤링하려면 아래 사진의 주석내용처럼... 해당하는 '월'을 직접 입력해줘야한다..

✔ 이제 이걸 DB에 넣을지 바로 달력 API랑 연동을 할지 생각해봐야겠다..

profile
우당탕탕....

0개의 댓글