Scrapy_Scrape

본격적 Scraping with Scrapy & Selenium

본 게시물을 작성함에 있어서, 수많은 구글링과 다른 블로그들을 참고했다. 하지만 글을 쓸 목적이 아니라, 프로젝트를 완수하는 것에 더 큰 목적이 있었기에, 자잘한 팁을 담은 사이트들을 기억하지 못하였다. 따라서, 이 모든 것들이 나의 지식이라기보다 모두의 지식임을 밝히는 바이다.

Background

크롤링을 해오면서, 항상 생각하던 문제점이 있었다. 그것은 즉, Django와 같은 Framework를 써야 프로젝트의 구조의 완고함을 가질 수 있고, 그리고 그것을 타인에게 공유하고 설명할 때 수고를 덜 수 있다는 것이다. 이런 장점이 있는 Framework가 크롤링 계에도 존재하니 그것은 Scrapy이다. 이전에는 뭔가 ‘어려울 것이다’, 실제로도 어렵긴 하지만, 라는 두려움 때문에 시작을 하지 못했지만, Django를 경험한 후 Framework에 대한 친숙함으로 인하여 바로 진행하였다.

하지만 결과부터 말하자면, 본 프로젝트는 Scrapy의 장점이 크게 빛나지 않았다. 그 이유는 인강 사이트들이 대부분 동적으로 운영되는 사이트였기 때문이다. 따라서 단순한 BeautifulSoup, requests 같은 패키지들로는 html을 가져올 수 없었다. 이를 극복하기 위하여 Selenium을 Scrapy내에 삽입했으며, 구조를 가져야겠다 라는 필승신념만 없었다면 그냥 .py file로 만드는 것도 괜찮을 수 있었다.