작성
·
346
0
안녕하세요. 인프런 강의에 푹빠져서 여기까지 오게 된 사람입니다.
http://www.cgv.co.kr/common/showtimes/iframeTheater.aspx?areacode=01&theatercode=0013&date=20240322
지금 보여주는 링크는 requests로 페이지 정보 가져오기에서 CGV 용상아이파크몰 상영시간표를 가져오는 것인데 iframe의 주소를 가져오면 하얀 화면만 나오고 아무것도 안나옵니다.
이럴 경우 어떻게 해야하는지 알고싶습니다.
도움을 좀 주셨으면 합니다. 감사합니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
동철김님, iframe에서 내용이 보이지 않는 경우는 여러 가지 원인이 있을 수 있습니다. 하지만, 대표적인 문제는 웹사이트가 iframe 내용을 외부 도메인에서 불러오기를 허용하지 않는 경우입니다. 이는 Cross-Origin Resource Sharing(CORS) 정책 때문에 발생할 수 있습니다.
첫 번째로 시도할 수 있는 방법은 웹사이트의 개발자 도구를 열어 네트워크 탭에서 실제 iframe 페이지에 대한 요청이 제대로 이루어지고 있는지 확인하는 것입니다. 만약 요청이 차단되었다면, 응답 헤더에 ‘Access-Control-Allow-Origin’과 관련된 내용이 보일 수 있습니다.
두 번째로, 서버 측에서 판단하여 CORS 정책을 우회할 수 있는 다양한 방법이 있지만, 이는 일반적으로 권장되지 않으며 법적 문제가 될 수 있습니다. 대신 웹 스크래핑을 수행할 때 Selenium 같은 브라우저 자동화 툴을 사용하여 실제 브라우저 환경에서 페이지를 불러와 보는 방법을 고려할 수 있습니다. Selenium을 사용하면, 실제 사용자가 브라우저를 사용하는 것처럼 자동으로 웹 페이지를 조작하고, iframe 내부의 데이터에 접근할 수 있습니다.
이 외에도 서버에서 제공하는 API를 확인하여, 상영시간표 데이터를 직접 받아올 수 있는 방법도 있습니다. 많은 웹사이트들이 외부 개발자들이 사용할 수 있는 공식 API를 제공하기도 합니다.
필요한 데이터에 접근하는데 여전히 어려움이 있다면, 가능하다면 웹사이트의 개발자 또는 고객 서비스에 직접 문의하는 것도 하나의 방법입니다.