- 정적 웹 사이트 : HTML 내용이 고정된 정적(static) 웹 사이트
- 동적 웹 사이트 : HTML 내용이 변하는 동적(dynamic) 웹 사이트 (ex. 인스타그램, 유튜브)
동적 웹 사이트의 동작 방식
동적 웹 사이트는 응답 후 HTML이 랜더링이 될 때 까지의 지연시간이 존재한다.
비동기 처리를 통해서 필요한 데이터를 처리한다.
- 동기 처리: 요청에 따른 응답을 기다린다. 즉, HTML 로딩에 문제가 없다.
- 비동기 처리: 요청에 따른 응답을 기다리지 않는다. 즉, 상황에 따라서 데이터가 완전하지 않은 경우가 발생한다.
requests로 요청 시 발생하는 문제점
동적 웹 사이트에 적용이 어려움
UI 상호작용의 어려움 (키보드 입력, 마우스 클릭 등을 requests로는 진행하기 어려움)
이를 해결하려면...
임의로 시간을 지연한 후, 데이터 처리가 끝난 후 정보를 가져오면 된다.
키보드 입력, 마우스 클릭 등을 (응답한 후에) 프로그래밍 한다.
웹 브라우저를 파이썬으로 조작하자!
웹 브라우저와 파이썬을 함께 사용한다는 아이디어 도출!
동적 웹 사이트는 응답 후 바로 정보를 추출하기 어렵다
또한, 다양한 키보드 입력과 마우스 클릭 등의 상호작용이 존재한다
이런 상황을 해결하기 위해, 웹 브라우저를 파이썬으로 조작하는 전략을 취하자
반응형