iframe

AI Scientist를 목표로!·2022년 11월 9일
0

iframe이란?

iframe은 HTML Inline Frame의 줄일말 이며 페이지에 Frame을 넣을 때 사용합니다.

iframe은 Frame의 일종으로 브라우저 창을 여러 Segement로 분할해 서로 다른 여러 페이지들을 한 페이지에 표한할 수 있습니다.

하지만 Frame 은 여러 이유로 W3C 에서 사용하지 않게 권고 하면서, Frame 구조로 된 웹 사이트는 점점 줄어드는 추세로 돌아섰고, HTML5 규격에서는 제외 되었습니다.

하지만 아직 Frame 구조로 된 웹 사이트들이 남아있기 때문에 호환성을 위해 일부 브라우저에는 여전히 지원하고 있다.


저는 Selenium을 통해서 증권 데이터를 Crawling 하고 싶었습니다.

1차적인 목적은 하나의 주식을 선택한 후 WICS의 분류를 가져오고 싶었습니다.

기존 Xpath를 사용해 종목분석을 클릭하는 것 까지는 손쉽게 가능했으나

css 및 xpath까지 명확하게 선택이 가능했으나 해당 text를 가져오지 못 했습니다.

여러 인터넷 검색을 통해 iframe이 걸려 있다는 것을 인지한 후 해당 iframe을 선택해들어가야만 text를 가져올 수 있음을 확인하였습니다.
(여러 iframe이 걸려있을 수 있기 때문에 원하는 iframe을 잘 선택해야 합니다.)

원하는 text를 뽑아냈고, 다른 iframe 페이지에 있는 요소들을 뽑아내려면 해당 ifrmae을 빠져나와야 합니다.

사용했던 코드는 아래와 같습니다.

# iframe 요소 선택
driver.switch_to.frame('해당 iframe 이름')

# iframe 빠져나오기
driver.switch_to.parent_frame()
profile
딥러닝 지식의 백지에서 깜지까지

0개의 댓글