실전 웹 크롤링 2

김승혁·2023년 7월 18일

iframe

• iframe: 인라인 프레임 요소
HTML iframe 요소는 중첩 브라우징 맥락을 나타내는 요소로,
현재 문서 안에 다른 HTML 페이지를 삽입한다.

• Iframe이란 쉽게 말하자면, 다른 페이지 정보를 빌려와서 보여주는 방법이다.
그렇게 다른 페이지 정보를 빌려와서 보여주는 경우, 해당 페이지를 get했을 때 빠지게 된다.

Java Script

브라우저에 보이는 컨텐츠와
스크랩한 소스코드가 맞지 않는다면?
혹은
페이지에서 리다이렉트가 일어나서 다른 페이지로 이동했지만,
페이지 URL은 전혀 바뀌지 않았다면?
이 경우, 자바스크립트가 사용되었을 가능성이 농후

Java script 스크래핑

• Java Script란?
JavaScript는 웹 개발에서 주로 사용되는 프로그래밍 언어로,
동적인 웹 페이지와 웹 애플리케이션을 만들기 위해 사용됩니다.
JavaScript는 웹 브라우저에서 실행되며, 사용자와 상호작용하고 웹 페이지의 동작을 제어하는 데 사용됩니다

• 앞서 발생한 상황들은 Java Script가 페이지에서 하는 일을 스크래퍼는 하지 못하기 때문에 일어납니다.
Java Script가 없다면 HTML은 그냥 가만히 있을 뿐이며, 이는 우리가 보는 화면(브라우저가 Java Script를 잘 실행한 상황)과 다를 가능성이 큽니다.

해결하는 방법?

• Step 1 ) 일단, 페이지가 Java Script를 써서 콘텐츠를 바꾸거나 불러온 다는 사실을 알아채야 합니다.
• Step 2 ) 그 후 원하는 방식으로 스크래핑을 시도합니다.
(1) 자바스크립트를 분석해 콘텐츠를 직접 스크랩하는 것
(2) 자바스크립트 자체를 실행할 수 있는 파이썬 패키지(Selenium)을 써서 웹 사이트를 브라우저에 보이는 그대로 스크랩 하는 것

예시 : 맛집 사이트에서 정보 수집하기

profile
어떻게 오셨나요

2개의 댓글

comment-user-thumbnail
2023년 7월 18일

가치 있는 정보 공유해주셔서 감사합니다.

1개의 답글