프로젝트
[ 프로젝트 ] 프로젝트 관련 스터디_크롤링_기초
박찬영
2021. 6. 28. 19:22
프로젝트를 진행하면서 필요한 크롤링 방법에 대해서 기초적인 부분만 살펴보겠습니다.
웹 크롤링에 대해서는 많은 분야에서 사용되는 만큼 굉장히 깊고 오랜 기간 연구해야 하는 분야입니다.
그러나 학부생 프로젝트에서 웹 크롤링이라 하면 라이브러리를 이용한 간단한 실습 정도라고 보시면 될 것 같습니다.
1. 기본적인 구조
보통 크롤링이라고 하면 다음과 같은 구조를 따릅니다.
라이브러리 임포트 - 웹 페이지 가져오기 - 웹 페이지 파싱하기 - 필요한 데이터 추출하기 - 추출한 데이터 활용하기
2. 파이썬 코드로 살펴보기
대표적인 크롤링 관련 파이썬 라이브러리는 BeautifulSoup 와 Selenium이 있습니다.
각 라이브러리마다 필요한 부분과 장단점이 있습니다.
#BeautifulSoup 라이브러리 import
import requests
from bs4 import BeautifulSoup
라이브러리를 임포트해준 다음 웹 페이지 정보를 url을 통해서 가져옵니다.
request.get을 이용해줍니다.
# 웹 페이지 정보 가져오기
res = requests.get("https://news.daum.net")
웹 페이지 정보를 가져왔으면 "파싱"을 해줍니다. 파싱은 웹페이지 정보를 의미 있고 알아보기 쉽게 바꿔준다는 정도로만 이해하시면 될 것 같습니다.
#웹 페이지 파싱하기
soup = BeautifulSoup(res.content,'html.parser')
파싱을 하고 나서 출력을 해보면 복잡했던 페이지 정보가 간단하게 정리된 것을 볼 수 있습니다.
# 필요한 데이터 추출하기
mydata = soup.find('title')
soup.find("tag name")으로 필요한 데이터가 있는 페이지 정보에서 태그로 접근을 합니다.
#데이터 활용하기(간단하게 출력)
print(mydata.get_text())
이렇게 간단하게 beautifulSoup를 이용한 웹크롤링의 기본적인 구조를 알아봤습니다.