Appia의 IT세상

[파이썬 크롤링]네이버 뉴스 검색결과 출력하기 본문

Python/Python Crawler[크롤러]

[파이썬 크롤링]네이버 뉴스 검색결과 출력하기

Appia 2021. 10. 17. 06:16
반응형

[파이썬 크롤링]네이버 뉴스 검색결과 출력하기

[파이썬 크롤링]네이버 뉴스 검색결과 출력하기

이전 크롤링은 주식 및 검색 결과에 대해서 해봤다면, 이번에는 뉴스 항목에 대해서 크롤링을 해보고자 합니다. 실제, 우리는 많은 검색어를 네이버를 통해서 검색을 합니다. 

네이버 화면 

이와 같이 검색을 하면, 다음과 같은 다양한 화면중에 뉴스 화면이 나타나기도 합니다. 우리는 여기에서 원하는 부분을 검색하기도 하고, 아니면 제목 부분만 참조하기도 합니다. 그래서 관련해서 제목 부분만 출력해도록 하겠습니다. 일단, 요새 핫한 주제인 "부동산"으로 관련된 뉴스를 검색해 보겠습니다. 

"부동산" 뉴스 검색 결과 

그럼 이 부분에 대해서 실제 다른 페이지와의 통일성을 찾아보도록 하겠습니다. 다음 보이는 부분이 "부동산"부분입니다. 

검색어 부분 

그리고 각 페이지에 따라서, start 부분이 달라지는 것을 알 수 있었습니다. 즉 빨간색 부분이 달라졌습니다. 그럼 이 부분을 바탕으로 코드를 작성해보도록 하겠습니다. 

페이지에 따라 달라지는 부분

그 전에 실제 검색해야하는 태그 및 Selector를 확인해보도록 하겠습니다. 

뉴스에서 확인해야하는 항목 

여기에서 class 이름을 보니 "news_tit"부분을 검토해보니, 이 부분을 활용하면 쉽게 제목을 추출할 수 있겠다는 생각을 하였습니다. 그래서 이 부분을 바탕으로 코드를 작성해 봤습니다. 실제 고정되어 있는 부분과, 변동되어 있는 부분들을 선별하여 작성하였습니다. 

import requests
from bs4 import BeautifulSoup

def print_title(address, query):

    for i in range(1,10):
        startvalue = 10* i - 9
        addr= address  +query+'&sort=0&photo=0&field=0&pd=0&ds=&de=&cluster_rank=34&mynews=0&office_type=0&office_section_code=0&news_office_checked=&nso=so:r,p:all,a:all&start='+str(startvalue)

        res = requests.get(addr)
        soup = BeautifulSoup(res.content, 'html.parser')


        items = soup.select('.news_tit')
        for item in items:

            print(item.text)


if __name__ == '__main__':
    baseaddress = 'https://search.naver.com/search.naver?where=news&sm=tab_pge&query='
    query = '부동산'

    for i in range(1,35):
        print_title(baseaddress, query)

이 부분을 바탕으로 진행하면, 다음과 같은 결과가 나타납니다. 

D:\BlogProject\venv\Scripts\python.exe D:/BlogProject/NAVER_Parse/Naver_News.py
"부동산 대개혁"…기본주택-개발이익환수 '이재명표 공약' 집값 잡을까
‘화천대유’ 직접 거론한 이재명 “대통령 되면 즉시 ‘부동산 대개혁’”
이재명 "부동산 불로소득 없애겠다…당선 즉시 강력한 대개혁"
'턱걸이 과반' 이재명 대선 본선 직행…"부동산 대개혁"
中부동산업체 절반, 정부 기준 미달…“파산 위기 ↑”
커피 한잔값에 부동산 투자, 5% 배당수익률 노리는 이것
민주당 대선후보 이재명 "당선 즉시 부동산 대개혁"
이재명, 민주당 대선후보로 선출... “당선 즉시 부동산 대개혁”
대선 검증대 오른 이재명표 기본시리즈… 252조 재원은 부동산 과세로
집값 급등에 다시 고개 드는 부동산 법인 '꼼수' 투기
대장동 사태, '부동산 카르텔' 균열 계기[이환주의 시선 3]
금융당국 전세대출 규제 강화…전세 실수요자들 ‘비상’ [부동산360]
<... 중간 생략 ... >
맨해튼 아파트 거래 폭증…2007년 부동산 거품때보다 많아
“널뛰는 부동산값, 지방에 답 있다”
"文경제 학사경고 수준"…부총리에 몰아친 '부동산 포화'(종합)
LH 전·현직 연루 부동산 법인 218억 투기

이와 같은 형태로 뉴스가 출력됩니다. 이와 같은 방법으로 뉴스제목을 추출하였습니다. 

파이썬[Python] 원하는 텍스트의 네이버 통합 검색 결과 제목 출력하기

 

파이썬[Python] 원하는 텍스트의 네이버 통합 검색 결과 제목 출력하기

파이썬[Python] 원하는 텍스트의 네이버 통합 검색 결과 제목 출력하기 이번 포스팅은 웹 크롤링을 하면서, 한번쯤 해볼만한 네이버 검색 결과에 대해서 추출하는 방법에 대해서 간단히 이

appia.tistory.com

이번 포스팅에서는 [파이썬 크롤링]네이버 뉴스 검색결과 출력하기라는 주제로 포스팅을 해봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든디 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

반응형
Comments