본문 바로가기
카테고리 없음

[Scrapy] 01. Scrapy 기본 사용법

by KIha_Jung 2020. 2. 27.

Scrapy 란?

Scrapy(스크래피) (/ˈskrpi/ SKRAY-pee)[2]  Python으로 작성된 오픈소스 웹 크롤링 프레임워크이다. 웹 데이터를 수집하는 것을 목표로 설계되었다. 또한 API를 이용하여 데이터를 추출할 수 있고, 범용 웹 크롤러로 사용될 수 있다.(위키백과)

 

1. 프로젝트 생성

cmd 창에서

scrapy startproject "프로젝트명"

으로 프로젝트를 생성할 수 있다. 그럼 아래와 같은 구조의 프로젝트가 생성된다. 

 

item.py: 크롤링할 데이터를 저장하는 기능을 하는 객체의 클래스를 정의하는 곳입니다.

middlewares.py: scrapy의 커스텀 middleware의 기능을 정의하는 곳입니다. middleware는 다시 한 번 이야기하자면 engine에서 다른 모듈로 request와 response 정보가 교환될 때 지나가는 중간 통로입니다.

pipelines.py: item pipelines의 커스텀 모듈을 정의하는 곳입니다. pipeline은 item이 다른 저장소로 저장될 때 거치는 통로라고 생각하면 됩니다.

settings.py: 현재 scrapy 프로젝트의 설정을 하는 파이썬 파일입니다.

scrapy.cfg: scrapy 프로젝트들의 전체적인 설정을 하는 곳입니다. 어떤 프로젝트가 어떤 설정을 따를 것인지 배포는 어떤 식으로 할 것인지를 정합니다.

출처: https://engkimbs.tistory.com/897 [새로비]

 

 

 

2. Spider 생성

해당 프로젝트에 진입 후 (cd test_project) spider 를 생성할 수 있다.

명령어는 다음과 같다.

scrapy genspider test1 blog.scrapyhub.com

 

3. 

https://blog.scrapinghub.com

 

THE SCRAPINGHUB BLOG

 

blog.scrapinghub.com

 

해당 사이트에서 기사의 제목들을 가져온다.

3. 실행

scrapy crawl test2 로 실행하여 결과를 확인할 수 있다.

출력 옵션을 줘서 저장할 수 있다.

scrapy crawl test2 -o result.csv -t csv

결과는 다음과 같다.

 

댓글