인프런 커뮤니티 질문&답변

jiwon6760님의 프로필 이미지
jiwon6760

작성한 질문수

따라하며 익히는 크롤링 마스터 with데이터공방

엑셀 파일에 저장하기

넷플릭스 크롤링 데이터 엑셀파일저장

작성

·

509

0

! pip install selenium

from selenium import webdriver

browser = webdriver.Chrome('c:/인프라수업자료/chromedriver')

url = 'https://www.netflix.com/kr/browse/genre/839338'

browser.get(url)

html = browser.page_source

from bs4 import BeautifulSoup

soup = BeautifulSoup(html,'html.parser')

section_list = soup.select('section')

results = []

for section in section_list:

    section_title = section.select('h2')[0].text

    program_list = section.select('li')

    for program in program_list:

        program_title = program.select('span.nm-collections-title-name')[0].text

        program_img = program.select('img')[0]['src']

        program_link = program.select('a')[0]['href']

        data = [section_title,program_title, program_img, program_link]

        results.append(data)

import pandas as pd

df = pd.DataFrame(results)

df.columns = ['카테고리', '프로그램명', '이미지', '링크']

df.to_excel('c:/인프라수업자료/엑셀파일저장하기.xlsx')

section_title설정해줄 때 [0].text를 해줬는데도 엑셀파일 상에서 카테고리명이 저렇게 나타나요. 그리고 데이터 이미지도 일부분은 주소가 잘 써져있는데 일부분은 저렇게 나타나는데 왜그럴까요..??

답변 1

0

데이터공방님의 프로필 이미지
데이터공방
지식공유자

 

동일한 코드로 테스트를 해봐도 이상이 없는데,, 이상하네요. 

section_title = section.select('h2')[0].text

실제 실행하셨을때에는  위 코드가 아닌

section_title = section.select('h2')

코드로 실행이 되었을 것 같습니다.

(혹은,, 아래 부분에서 한번 더 실행이 되었을 수도 있을 것 같네요)

 

쥬피터노트북으로 실행중이시면 

코드 하나 하나 정리해보면서 실행해보시는 것을 추천드립니다.

 

 

 

넥플릭스 이미지 주소의 경우에는 

넷플릭스 크롤링(1page 크롤링) - 프로그램 정보 수집하기 강의에서 18분 이후부터 설명 드렸던 것 처럼

화면에 보이는 이미지만 가져오기 때문에 그렇습니다. 

강의 내용 한번 더 확인 요청드려요

 

 

jiwon6760님의 프로필 이미지
jiwon6760
질문자

감사합니다!!

jiwon6760님의 프로필 이미지
jiwon6760

작성한 질문수

질문하기