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

김성규님의 프로필 이미지
김성규

작성한 질문수

파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

섹션9 에서 5단계 질문입니다~

작성

·

172

1

감탄에 감탄!!

명강의 정말 감사합니다.

취업준비로 독학하고 있는데 쌤 강의에서 많은 걸 배우고

명강의라는걸 항상 느낍니다. 벌써부터 다음 로드맵에 기대가 되고

설레면서 재밌게 공부하고 있습니다. 아... 다름이 아니라

섹션9에서

5단계: 타이틀별 댓글 가져와서 출력하기

import requests
from bs4 import BeautifulSoup

res = requests.get('https://davelee-fun.github.io/trial/board/news.html')
soup = BeautifulSoup(res.content, 'html.parser')
items = soup.select('div.list_title')
i = 0
for item in items[:5]:
    title = item.select_one('span.subject_fixed')
    reply_count = item.select_one('span.rSymph05')
    link = item.select_one('a.list_subject')
    if title != None:
        i += 1
        print(i, title.get_text().strip(), reply_count.get_text())
        res_title = requests.get('https://davelee-fun.github.io/trial/board/'+link['href'])
        soup_title = BeautifulSoup(res_title.content, 'html.parser')
        replies = soup_title.select('div.comment_content')
        for reply in replies:
            print('ㄴ', reply.get_text().strip().replace("\n", "").replace("\t", ""))

위는 제가 입력한 부분인데 출력값이 쌤과 다르게 3번째 게시글 댓글까지 나와서요.

아무리 봐도 어디가 다른지 몰라서요..

한번 봐주시고 피드백 부탁드릴게요

1 KT, MS 투인원 랩톱 '서피스 프로9 5G' 단독 출시 1
ㄴ 국내통신사 + 5G 두개의 단어만 합쳐지면 왜 다 같지않아 보일까용??
2 NIO, 차량가격 인하 및 배터리스왑 옵션으로 분리 2
ㄴ 니로가 아니고 니오군용 허허허 배터리스왑은 충전보다 좋을꺼 같아요. 자동차를 스마트폰처럼 방수때문에 배터리 교체형을 버리고 일체형으로 하면충전시간이 너무 긴거같아요.
ㄴ 니오 전기차 국내에서도 한대 봤습니다. 모카 영상에 나왔던 이 차량이었어요.어떤 아주머니께서 운전하시던데 홍보용인지개인차량인지...신기하더라고요. ㅎㅎ
3 삼성전자, 게이밍 모니터 ‘오디세이 OLED G9’ 출시 6
ㄴ M9은. . . .ㅜ.ㅜ
ㄴ 삼성 공식 보도자료인데도 테어링 현상을 티어링이라고 하고 있네요..아수스 노트북같은데 상세페이지에서도 그러던데..하..
ㄴ 이 정도면 기사를 가장한 광고 아닌가요??
ㄴ @미드나잇님 삼성전자 뉴스룸이면보도자료죠. 거기서 광고를 하든말든 상관없어보이구요.
ㄴ @미드나잇님공식보도자료입니다.https://news.samsung.com/kr/%EC%82%BC%EC%84%B1%EC%A0%84%EC%9E%90-%EA%B2%8C%EC%9D%B4%EB%B0%8D-%EB%AA%A8%EB%8B%88%ED%84%B0-%EC%98%A4%EB%94%94%EC%84%B8%EC%9D%B4-oled-g9-%EC%B6%9C%EC%8B%9C하단에출처로된 기재된 링크로 들어가시면 나와요 https://news.samsung.com/kr/%EC%9D%B8%ED%8F%AC%EA%B7%B8%EB%9E%98%ED%94%BD-%EB%8D%94%EC%9A%B1-%EA%B0%95%EB%A0%A5%ED%95%B4%EC%A7%84-%EC%98%A4%EB%94%94%EC%84%B8%EC%9D%B4-oled-%EA%B2%8C%EC%9D%B4%EB%B0%8D-%EB%AA%A8인포그래픽은이어서 추가한거구요.
ㄴ 220만원 진짜 싸게나왔네요 ㄷㄷ못해도 300만은 넘을 줄 알았는데사용기들 보고 반년뒤쯤에 사야겠네요

답변 1

1

안녕하세요. 답변 도우미입니다.

우선 좋게 봐주셔서 정말 감사합니다.

말씀하신 부분에 대해 직접 코드를 테스트해보지는 못하지만요. 다음과 같이 타이틀 태그를 상위 5개 가져오신 것으로 이해가 되요. 그런데 이 중에 title 이 없는 글을 빼도록 하신 것 같은데요. 그렇다면, 상위 5개중 title 이 없는 공지글이 두개 정도로 이해하고 있어서, 나머지 3개의 게시글에 대해 댓글이 표시된 것이 맞는 것으로 이해가 됩니다.

items = soup.select('div.list_title')
i = 0
for item in items[:5]:
    title = item.select_one('span.subject_fixed')
    reply_count = item.select_one('span.rSymph05')
    link = item.select_one('a.list_subject')
    if title != None:

혹시라도 저희가 잘못생각한 것이 잇다면, dream@fun-coding.org 로 메일주셔도 좋을 것 같습니다.

감사합니다.

김성규님의 프로필 이미지
김성규

작성한 질문수

질문하기