일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- collections
- C
- effective python
- 텐서플로
- graph
- recursion
- yarn
- LSTM
- scrapy
- 코딩더매트릭스
- python
- 하이브
- 알고리즘
- 딥러닝
- Java
- RNN
- hadoop2
- NumPy
- Sort
- 주식분석
- HelloWorld
- 그래프이론
- GRU
- tensorflow
- C언어
- hive
- 파이썬
- 하둡2
- codingthematrix
- 선형대수
- Today
- Total
목록scrapy (4)
EXCELSIOR
이번 포스팅은 앞의 포스팅인 [04. Scrapy를 이용한 뉴스 크롤링 하기]와 같은 내용이지만, Scrapy의 callback을 이용하여 크롤링한 url안에 뉴스기사를 크롤링 해오는 방법이다. 우선, 앞에서 포스팅한 내용 중 3번을 다시 보도록 하자.아래의 빨간 박스안의 내용에서 보듯이 해당 뉴스기사의 링크(url)을 크롤링한 뒤 다시 크롤링을 해주는 매우 귀찮은 방법을 사용했었다. 실제로 테스트를 할때마다 Scrapy 명령어를 두 번이나 입력해줘야 하고, pipelines.py에서 한번은 CsvPipeline 또한번은 MongoDBPipeline 클래스를 번갈아 바꿔주면서 테스트를 진행했어야 했다. 하지만, 이를 Scrapy의 callback을 이용해서 간단하게 해결할 수 있다. Callback에 관..
이번 포스팅은 앞의 게시글을 토대로 웹크롤링을 위한 환경설정 후 Scrapy를 이용하여 뉴스기사에 대한 크롤링을 하여 JSON, CSV, MongoDB에 저장하는 방법에 대한 글이다. 1. robots.txt (로봇 배제 표준)웹 크롤링에 앞서 크롤링하고자 하는 사이트가 크롤링이 가능한지 아닌지 부터 알아 보아야한다.이를 확인할 수 있는 것이 바로 '로봇배제표준'이라고 하고 'robots.txt'에서 확인할 수 있다.해당사이트 주소 뒤에 '/robots.txt'를 입력하면 된다. 로봇 배제 표준은 웹 사이트에 로봇이 접근하는 것을 방지하기 위한 규약으로, 일반적으로 접근 제한에 대한 설명을 robots.txt에 기술한다.이 규약은 1994년 6월에 처음 만들어졌고, 아직 이 규약에 대한 RFC는 없다.이..
BeautifulSoup와 Scrapy는 둘 다 웹 크롤링(Web Crawling)을 해주는 Python 패키지들이다. 1. BeautifulSoup VS Scrapy1) BeautifulSoup - html 문서에서 원하는 정보를 손쉽게 가져올 수 있는 방법을 제공한다.- 자동으로 인코등을 유니코드로 변환하여 UTF-8로 출력해준다.- lxml, html5lib 파서(Parser)를 이용한다.- https://www.crummy.com/software/BeautifulSoup/bs4/doc/ 에서 기본적인 사용법을 익힐 수 있다. 2) Scrapy - web scraper framework- 다양한 selector 지원- 파이프 라인- 로깅- 이메일- https://docs.scrapy.org/en/l..
1. 개발환경- Python Version : 2.7 - 크롤링 라이브러리 : BeautifulSoup4, Scrapy- 기타 : 아나콘다(Anaconda)를 이용한 가상환경(virtual environment) 설정 2. 아나콘다 설치① https://www.continuum.io/downloads 사이트에서 운영체제에 맞는 아나콘다를 설치 ② 가상환경(Virtual environment) 만들기 - Windows : 설치 후 Anaconda prompt를 실행한다.- Mac OS : 설치 후 Terminal을 실행한다.- Terminal/prompt 창에 아래의 명령어를 통해 웹 크롤링 개발환경을 설정할 가상환경을 생성한다. (저는 crawler라는 이름의 가상환경을 만들었습니다.) # 가상환경 생성..