Web Scraping + Example (뉴스 기사 제목 스크래핑)

2021. 5. 16. 17:33[AI]/Data Engineering

New Stuff

Key Points

  • Web Scraping

Learned Stuff

[Web Scraping]

  • 웹 사이트에서 필요한 부분만 추출하는 작업

 

Example

  • 뉴스 기사 제목 스크래핑하기

 

Steps

  1. 네이버 뉴스에 들어간 후 '인공 지능' 입력 (다른 키워드 입력 가능)

 

  1. 'F12' 누른 뒤 뉴스 기사 제목에 해당하는 부분의 Class 명 찾기
  • 지금 같은 경우 'a' 라는 class 안에 'news_tit' 라는 sub-class 안에 있음

 

  1. 아래와 같은 코드로 스크래핑하기
import requests
from bs4 import BeautifulSoup

base_url = 'https://search.naver.com/search.naver?where=news&sm=tab_jum&query=%EC%9D%B8%EA%B3%B5+%EC%A7%80%EB%8A%A5'

# get page 
def get_page(page_url) : 
    req = requests.get(page_url)
    soup = BeautifulSoup(req.content, "html.parser")
    return soup

# Scraping
a = get_page(base_url)
b = a.find_all('a', {'class' : 'news_tit'})
for i in b :
    print(i.text)

# Output
'''
유럽의 ‘인공지능 규제 정책’ 우리의 미래에 어떤 영향을 미칠까?
엔씨소프트, AI 프레임워크 공개…인공지능 윤리 개선 목표
CT 분석도 인공지능이…SKT, AI 의료 영상진단 솔루션 개발
광주시 5월28일까지 인공지능 창업 경진대회 참가자 모집
'인공지능 범죄예측' 정확도 83%…경찰, 내달 본격도입
충북도, KT와 광역지자체 최초 인공지능 활용 MOU 체결
SK텔레콤, 가톨릭중앙의료원과 인공지능 의료정보 분석솔루션 추진
충북도, KT와 최초 인공지능(AI) 활용 MOU 체결
자가 격리 건강상태, ‘인공지능’으로 확인
광주시, 인공지능 기관합동 투자유치 설명회 개최
'''
728x90