inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

웹스크래핑 코드 리뷰 도와주세요 (초렙.. '-')

483

김하린

작성한 질문수 1

0

네이버웹툰 만화 -> 신혼일기 -> 15화 제목을 가져와 보려고 하기와 같이 코드를 작성했습니다만

주피터 노트북에서 run 했을 때 [ ] 라고만 나옵니다 ㅠㅠ 어떻게 해야 할까요??

import requests

from bs4 import BeautifulSoup as bs

url = "https://comic.naver.com/webtoon/list?titleId=812354"

rsp = requests.get(url, verify=False) rsp.raise_for_status()

soup = bs(rsp.text, "lxml")

print(soup.find_all("span", attrs={"class": "EpisodeListList__title--lfIzU"}))

python requests scraping

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

해당 코드를 보면 몇 가지 문제가 있어 보입니다.

  1. from bs4 import BeautifulSoup as bs 부분에서 as bs를 사용하고 계신데, 나중에 BeautifulSoup을 사용할 때 bs 대신 soup로 사용하고 계셔야 합니다. 따라서 as bs 부분을 삭제하고 soup라는 변수명을 사용하시는 것이 좋습니다.

  2. requests.get(url, verify=False)에서 verify=False를 사용하고 계시는데, 이는 SSL 인증을 건너뛰는 것입니다. 대부분의 경우 필요하지 않기 때문에 이 부분을 제거하시는 것이 좋습니다.

  3. print(soup.find_all("span", attrs={"class": "EpisodeListList__title--lfIzU"}))에서는 find_all을 사용하여 span 태그 중 클래스 이름이 EpisodeListList__title--lfIzU인 요소들을 모두 찾는 것입니다. 그러나 해당 요소들은 모두 상위 요소인 div로 감싸져 있습니다. 따라서 div 태그를 추가하고, 그 안에서 span 태그를 찾도록 코드를 수정하셔야 합니다.

수정한 코드는 아래와 같습니다.

import requests
from bs4 import BeautifulSoup as soup

url = "https://comic.naver.com/webtoon/list?titleId=812354"
rsp = requests.get(url)
rsp.raise_for_status()
html = rsp.text

soup = soup(html, "lxml")
episodes = soup.find_all("div", attrs={"class": "col_inner"})[0].find_all("span", attrs={"class": "title"})

for episode in episodes:
    print(episode.text)

위의 코드는 네이버 웹툰의 신혼일기 중 제목(class=“title”)을 가져와 출력하는 코드입니다. 코드를 실행하면 해당되는 제목들이 출력될 것입니다.

참고로, 코드 실행 결과가 []로 나오는 경우에는 해당 요소들을 찾지 못한 것입니다. 그 경우에는 요소의 선택자나 클래스 이름 등을 확인해보시고, 코드를 적절히 수정하셔야 합니다.

기능에 대한 추가적인 도움이 필요하신 경우, 더 상세한 질문을 주시면 더 많은 도움을 드릴 수 있을 것입니다. 감사합니다.

강의 업데이트

0

1

1

블로그 내용 정리

0

4

0

3.1.강화학습 기본 알고리즘-마르코프 결정과정

0

9

2

매수 실행 시점 관련

0

8

0

영상 다운로드는 안되나요?

0

14

1

수강자료 다운로드 관련 문의

0

22

2

Opus/Sonnet 버전 관련 문의

1

22

2

"run_nvidia_gpu.bat" 실행후

0

18

1

섹션2 질문이요

1

25

2

섹션 2

0

19

1

섹션1.9 질문입니다!

1

37

3

웹서비스 방법

0

34

2

MCP 정의가 잘못되어 있음 (Chapter2)

0

33

1

수강 연장 문의드립니다.

0

34

2

13. (App 2) 기본기 훈련 에서

0

35

1

채점 프로그램 미작동

0

28

2

챌린지 시작일 문의

0

40

0

2. 어떤 도구를 사용하는 것이 가장 유리할까? 강의 중

0

32

1

안녕하세요 ppt 자료 메일로 부탁드립니다

0

24

1

11차시 Antigravity IDE 설치 후

0

34

1

링크드 리스트 중간 삽입삭제 시간복잡도 질문

0

37

2

Kaggle 노트북(predict.ipynb) 관련

1

38

2

처음 에이전트 설정을 잘못 했을 경우 수정 하는 방법

0

36

1

강의 연장 문의

0

36

2