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

eunsu shin님의 프로필 이미지
eunsu shin

작성한 질문수

[2024 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)

선택에서 제외시키기

id 값이 바뀐것같아서 찾아서 넣어보는데 잘안됩니다.

작성

·

294

0

https://n.news.naver.com/mnews/article/003/0011827028?sid=101

이곳에서 개발자모드에서 id값을 찾아서 해보고있는데

계속 None만 반환되네요.
이유를 모르겠습니다. 도와주세요

답변 1

0

스타트코딩님의 프로필 이미지
스타트코딩
지식공유자

안녕하세요~!

코드를 첨부해 주시면 확인해 드릴 수 있습니다 :)

eunsu shin님의 프로필 이미지
eunsu shin
질문자

아래 코드입니다.
https://search.naver.com/search.naver?where=news&sm=tab_jum&query=%EC%82%BC%EC%84%B1%EC%A0%84%EC%9E%90
이 사이트에서는 출력이안되고 오류가발생하고
https://search.naver.com/search.naver?where=news&sm=tab_jum&query=%EB%86%8D%EA%B5%AC
이사이트에서는 글씨가 출력됩니다.
저는 영상 예제처럼 위사이트에서 나오게하고싶은데, 개발자모드에서 id값을 못찾는거같아요 제가.
꼭 해결하고 넘어가고 싶은 성격이라 계속 이곳에서 해매고있네요.

import requests
from bs4 import BeautifulSoup
import time

response = requests.get(
    "https://search.naver.com/search.naver?where=news&sm=tab_jum&query=%EC%82%BC%EC%84%B1%EC%A0%84%EC%9E%90")
html = response.text
soup = BeautifulSoup(html, 'html.parser')
articles = soup.select("div.info_group")  # 뉴스 기사 div 10개 추출
for article in articles:
    links = article.select("a.info")  # 리스트
    if len(links) >= 2:  # 링크가 2개 이상이면
        url = links[1].attrs['href']  # 두번째 링크의 href를 추출
        response = requests.get(url, headers={'User-agent': 'Mozila/5.0'})
        html = response.text
        soup = BeautifulSoup(html, 'html.parser')
        content = soup.select_one("#content")
        if content is not None:  # content가 None이 아닌 경우에만 출력
            print(content.text)
        time.sleep(0.3)
스타트코딩님의 프로필 이미지
스타트코딩
지식공유자

soup.select_one("#content") 가 아니라

soup.select_one("#contents") 로 바꿔 보시면 동작할 겁니다 ㅎㅎ

eunsu shin님의 프로필 이미지
eunsu shin

작성한 질문수

질문하기