Coach space
/
데이터 수집
Search
Share
데이터 수집
scarping
목차
Web
1.
[Client] 브라우저 실행
2.
[Client] URL 주소 입력
3.
[Client] 클라이언트가 서버에게 컨텐츠 요청(request)
4.
[Server] 서버는 클라이언트에게 요청받은 컨텐츠를 응답(response)
5.
[Client] 브라우저는 서버가 전달한 응답을 해석하여 화면에 표시
HTML
•
시작줄, 헤더(Header), 본문(Body)으로 이루어짐
기본 지식
데이터 수집 개요
목차
BeautifulSoup
•
https://www.crummy.com/software/BeautifulSoup/
•
파싱을 도와주는 강력한 python 라이브러리
•
쉽고 간결하며, 정규식을 작성할 필요 없이 tag, id, class 등의 이름으로 쉽게 파싱 가능
•
설치: pip install beautifulsoup4
주요 함수
사용 방법
find_all(), find()
BeautifulSoup
목차
[실습] 한국 거래소 파일 다운로드 받기
1.
브라우저 > 검사 > 네트워크 탭 실행
2.
다운로드 받을 파일 선택
3.
request 정보 값 설정
4.
response 값 저장
5.
두번째 request를 첫번째 response값을 활용하여 설정
6.
response 데이터를 엑셀로 저장(byte를 excel로 변환)
request > POST 방식
목차
requests
•
Python으로 HTTP request를 서버로 보내기 위한 패키지
•
속도가 빠름
•
Javascript 실행은 불가능함
사용 방법
requests > GET 방식
목차
selenium
•
동적으로 브라우저 제어
•
직접 브라우저를 실행하여 python code로 mouse click, keyboard input 등의 event를 발생시킴
•
실제 브라우저로 실행한 것과 동일한 값을 얻을 수 있음
•
속도가 느림
•
pip install selenium
사전 준비 - 크롬 드라이버
•
PC에 설치된 크롬 버전 확인
•
크롬 드라이버 설치 페이지 이동
selenium
목차
공공데이터
•
크롤링 사이트:
https://www.data.go.kr/
•
참고 소스코드:
주피터노트북
사전준비
•
공공데이터포털 회원가입
•
'아파트매매 실거래자료'검색
•
OPEN API에서 XML 형태로 제공하는 항목 선택
•
활용 신청 > 기타
•
마이페이지 > 일반 인증키(UTF-8), End Point, hwp 문서 확인
크롤링 절차
1.
URL request
2.
response 데이터 파싱(json)
OpenAPI
목차
미니 프로젝트
1) 파일 업로드 주소
2) 업데이트 파일
•
파이썬 소스코드(.py or ipynb)
: 예: 네이버주가분석_홍길동.ipynb
•
보고서(자유양식)
미니 프로젝트