웹 크롤링 데이터를 활용한 데이터 분석
이전 글에서는 **웹 크롤링(Web Scraping)**을 이용해 웹에서 데이터를 수집하는 방법을 배웠습니다.
그렇다면 크롤링한 데이터를 어떻게 활용할 수 있을까요?
이번 글에서는 웹 크롤링한 데이터를 데이터 분석에 활용하는 방법을 배워보겠습니다.
[PYTHON] 파이썬을 활용한 웹 크롤링(Web Crawling) 기초
파이썬을 활용한 웹 크롤링(Web Scraping) 기초인터넷에는 다양한 데이터가 존재합니다.하지만 모든 데이터를 직접 다운로드할 수 있는 것은 아니므로, **웹 크롤링(Web Scraping)**을 사용하여 원하는
englishforkid.tistory.com
1. 크롤링한 데이터 저장하기
1.1 CSV 파일로 저장
웹에서 가져온 데이터를 CSV 파일로 저장하면, 엑셀이나 Pandas에서 쉽게 분석할 수 있습니다.
📌 예제: 뉴스 제목을 크롤링하여 CSV로 저장하기
import requests
from bs4 import BeautifulSoup
import pandas as pd
url = "https://news.naver.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
# 뉴스 제목 가져오기
news_titles = soup.find_all("a", class_="nclicks")
# 리스트에 저장
data = []
for title in news_titles:
data.append(title.text.strip())
# 데이터프레임 생성
df = pd.DataFrame(data, columns=["News Title"])
# CSV 파일로 저장
df.to_csv("news_titles.csv", index=False, encoding="utf-8-sig")
print("CSV 파일 저장 완료!")
✅ Pandas를 사용하여 CSV로 변환
✅ index=False → 불필요한 인덱스 제거
✅ encoding="utf-8-sig" → 한글 깨짐 방지
2. Pandas를 활용한 데이터 분석
2.1 CSV 파일 불러오기
df = pd.read_csv("news_titles.csv")
print(df.head()) # 상위 5개 데이터 출력
2.2 데이터 개수 확인
print("총 데이터 개수:", len(df))
2.3 특정 키워드가 포함된 뉴스 찾기
keyword = "경제" # 찾고 싶은 키워드
filtered_df = df[df["News Title"].str.contains(keyword, na=False)]
print(filtered_df)
3. 데이터 시각화
크롤링한 데이터를 시각화하면 더 직관적으로 분석할 수 있습니다.
📌 예제: 단어 빈도수 분석
from collections import Counter
import matplotlib.pyplot as plt
import seaborn as sns
import re
# 뉴스 제목 불러오기
titles = df["News Title"].dropna().tolist()
# 텍스트 전처리 (특수문자 제거)
text = " ".join(titles)
text = re.sub(r"[^가-힣\s]", "", text)
# 단어별 빈도수 계산
words = text.split()
word_count = Counter(words)
# 상위 10개 단어 시각화
top_words = word_count.most_common(10)
words, counts = zip(*top_words)
plt.figure(figsize=(10, 5))
sns.barplot(x=list(words), y=list(counts), palette="coolwarm")
plt.title("뉴스 제목 단어 빈도수")
plt.xlabel("단어")
plt.ylabel("빈도수")
plt.xticks(rotation=45)
plt.show()
✅ **텍스트 전처리 (re.sub)**로 특수문자 제거
✅ Counter로 단어 빈도수 분석
✅ Matplotlib + Seaborn으로 시각화
4. 크롤링 데이터 활용 예시
💡 웹 크롤링 데이터를 활용한 다양한 프로젝트 아이디어
✅ 뉴스 데이터를 분석하여 핫 트렌드 예측
✅ 블로그/커뮤니티 데이터를 분석하여 사용자 반응 분석
✅ 주식 뉴스 크롤링하여 종목별 키워드 추출
5. 결론
이번 글에서는 웹 크롤링한 데이터를 활용하여 데이터 분석하는 방법을 배웠습니다.
- 크롤링 데이터를 CSV로 저장
- Pandas를 이용한 데이터 분석
- Matplotlib & Seaborn을 활용한 시각화
다음 글에서는 **자동화된 웹 크롤링(셀레니움 활용)**을 배워보겠습니다! 🚀
[PYTHON] 파이썬 기초: 변수와 데이터 타입 이해하기
파이썬 기초: 변수와 데이터 타입 이해하기 파이썬을 배우면서 가장 먼저 익혀야 할 개념 중 하나가 변수(variable)와 데이터 타입(data type) 입니다. 변수를 사용하면 데이터를 저장하고 조작할 수
englishforkid.tistory.com
[PYTHON] 데이터 분석을 위한 파이썬 라이브러리: NumPy와 Pandas 기초
데이터 분석을 위한 파이썬 라이브러리: NumPy와 Pandas 기초데이터 분석에서 빠른 연산과 효율적인 데이터 처리는 필수입니다.파이썬에는 이를 위해 NumPy와 Pandas라는 강력한 라이브러리가 있습니
englishforkid.tistory.com
'BIG DATA > PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬으로 자동화된 데이터 보고서 생성하기 (0) | 2025.02.23 |
---|---|
[PYTHON] 파이썬 Selenium을 활용한 자동 웹 크롤링 (0) | 2025.02.23 |
[PYTHON] 파이썬을 활용한 웹 크롤링(Web Crawling) 기초 (0) | 2025.02.22 |
[PYTHON] 파이썬 데이터 시각화: Matplotlib과 Seaborn 기초 (0) | 2025.02.22 |
[PYTHON] 데이터 분석을 위한 파이썬 라이브러리: NumPy와 Pandas 기초 (0) | 2025.02.22 |