본문 바로가기
Python/BeautifulSoup

[크롤링] 파이썬으로 간단하게 크롤링하기6. (데이터 엑셀에 저장)

by 미눅스[멘토] 2024. 10. 8.
728x90

 

https://deahan.tistory.com/423

 

[크롤링] 파이썬으로 간단하게 크롤링하기5. (여러개 페이지 크롤링 , URL 조작자)

https://deahan.tistory.com/422 [크롤링] 파이썬으로 간단하게 크롤링하기4. (여러개 상품 크롤링 하는 법)https://deahan.tistory.com/421 [크롤링] 파이썬으로 간단하게 크롤링하기3. (한개의 상품 크롤링)https:/

deahan.tistory.com

여기까지 했다면 이번에는

크롤링한 데이터를 엑셀에 저장해보자

 

pandas : 데이터분석 라이브러리

openpyxl : 엑셀 자동화 라이브러리

 

<라이브러리 설치 방법>

pip install pandas

pip install openpyxl

 

 

1.비어있는 리스트를 만들고 데이터를 한행씩 추가한다.(data =[], data,append([컬럼들]))

2.데이터 프레임을 만들고 엑셀로 저장한다.

 

pip install pandas

따로실행

pip install openpyxl

따로실행

import requests
from bs4 import BeautifulSoup
import pandas as pd

data = []
for i in range(1, 5):
    response = requests.get(f"https://startcoding.pythonanywhere.com/basic?page={i}")
    html = response.text
    soup = BeautifulSoup(html, 'html.parser')
    items = soup.select(".product")
    for item in items:
        category = item.select_one(".product-category").text
        name = item.select_one(".product-name").text
        link = item.select_one(".product-name > a").attrs['href']
        price = item.select_one(".product-price").text.split('원')[0].replace(',','')
        print(category, name, link,price)
        data.append([category,name,link,price])
# 데이터 프레임 만들기
df = pd.DataFrame(data,columns=["카테고리","상품명","상세페이지링크","가격"])
df
# 엑셀 저장
df.to_excel('result.xlsx')

# 자동생성 인덱스 번호 제거
#df.to_excel('result.xlsx', index=False)