본문 바로가기

Computer/Python

크롤러를 만들어봅시다 (1) - Scrapy 설치와 설정

연구 목적으로 데이터를 얻고 싶으나 실제 기업의 데이터나 사내 데이터의 경우 많은 제약사항으로 연구에 사용되지 못하는 경우가 태반이다. 그래서 웹에 존재하는 데이터를 긁어 데이터셋을 만드는 것을 웹 크롤링이라고 한다. 


웹 크롤링을 하는 방법은 여러 가지가 있으나, 여기에선 Python과 Scrapy를 이용한 크롤러를 제작해보도록 하겠다. 모든 설치 과정은 windows 기준이다.


WARNING: 크롤링을 하는 데에 대한 모든 책임은, 크롤러를 실행하는 당사자에게 있음을 밝힌다.


Python 은 편리하고 쉬운 스크립트 언어로 널리 사용되고 있는데, 유독 Python을 사용한 크롤러 모듈들이 많이 개발되어 있다. 그 중 Scrapy는 간단하게!(물론 열심히 공부한 이에게) 크롤링을 할 수 있게 도와준다. 우선 Scrapy 홈페이지 (scrapy.org)에서 관련 정보를 얻자. 


중요. Scrapy 는 Python 2.7에 맞게 개발되어 있다. 따라서 3.X버전에서는 작동하지 않는다.


Scrapy를 설치하는 데엔 여러 가지 방법이 있지만, 여기서는 pip를 이용하겠다. pip는 다양한 Python Library를 설치하는 데 유용하게 쓰이는 프로그램이다.


Windows 환경에서 pip를 설치하는 가장 쉬운 방법은 다음 사이트에서 다운받는 것이다.


http://www.lfd.uci.edu/~gohlke/pythonlibs/#pip/



다음에서 적당한 버전을 선택. python 2.7이므로 py2.7이 들어있는 것으로 고르자.

(참고로 이 사이트는 Python 개발에 여러모로 유용하므로 즐겨찾기를 추천한다.)

설치는 next next 를 누르면 금방 끝난다.


Scrapy는 설치하기 전에 몇 가지 요구되는 프로그램들을 먼저 설치해야한다. 하지만 pip와 함께라면 쉽게 설치할 수 있다. (그런데 좀 많고 번거롭다)


Win32OpenSSL 

http://slproweb.com/products/Win32OpenSSL.html 에 가서 

(1) 자신의 환경에 맞는 Visual C++ 2008 redistributables 를  설치 (이미 설치되어 있을 수도 있다.)

(2) 자신의 환경에 맞는 OpenSSL 을 설치 (Light버전은 X)

(3) 환경설정에서 openssl 의 설치폴더 (기본은 c:\openssl-win32\bin)을 PATH에 추가.


pywin32

http://sourceforge.net/projects/pywin32/files/ 에서 python 버전에 맞게 다운받아 설치 


Twisted

http://twistedmatrix.com/trac/wiki/Downloads 에서 OS에 맞게 설치


zope.interface

https://pypi.python.org/pypi/zope.interface에 들어가서 egg파일을 받은 뒤, 커맨드에서 easy_install file.egg 을 입력해 설치


lxml

http://pypi.python.org/pypi/lxml/ =>별도의 다운 없이 pip install lxml 로 설치


pyOpenSSL

https://launchpad.net/pyopenssl 에서 python 버전에 맞게 다운/설치


저 많은 프로그램을 다 설치하였으면 드디어! 커맨드 창에 pip install Scrapy 라고 치고 엔터를 딱! 누르면 설치가 완료된다. 혹시 설치 중에 어려움을 겪으면 http://doc.scrapy.org/en/latest/intro/install.html#intro-install-platform-notes 를 참조.