본문 바로가기
# 뜨는 거

크롤링 기초 requests를 이용한 웹페이지 긁기

by lakedaimong 2022. 6. 14.

 

크롤링 requests

크롤링은 인터넷 상의 수많은 웹페지중 조건에 많은 정보들을 수집하는 기술입니다. 내가 필요한 특정 정보에 대한 조건을 설정하기 전에 raw data에 해당하는 웹페이지의 html을 긁어와야 합니다. 파이썬의 대표적인 크롤링 패키지인 requests를 이용한 웹페이지 긁어오는 방법에 대해 알아보겠습니다.

실습코드

import requests
from bs4 import BeautifulSoup

url = 'html을 긁어올 주소 URL'

headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get(url,headers=headers)

soup = BeautifulSoup(data.text, 'html.parser')

print(soup)

 

설명

코드를 따라가며 코멘트 하겠습니다.

   
  • 먼저 requests와 buautifulsoup 패키지를 import 해줍니다.
  • html 을 긁어 오고자 하는 웹페이지의 주소(url)을 url 변수에 할당해 줍니다.
  • headers 부분은 호스트 요청이 머신 요청이 아닌 일반적인 사용자 요청으로 서버를 속이는(?) 방법입니다. 웹페이지에 따라 호스트가 머신임을 감지하고 요청을 거부하는 경우가 있기 때문에 해당 코드를 넣어줍니다.
  • data 변수에 requests.get 함수를 이용하여 해당 주소(url)에서 자료를 긁어 옵니다.
  • 서버를 호출해서 받은 정보는 buautifulsoup 함수를 이용하여 자료로 활용 가능한 정보로 정리해(.text) 준 다음 맛있는(?) soup로 만들어 줍니다.
  • 마지막으로 확인을 위해 이 soup를 print()해 주면 해당 페이지(url)의 html 을 가져온 것을 확인할 수 있습니다. 

이와같은 방법으로 특정 정보에 대해 여러 웹페이지의 정보를 수집하여 정리하는 방식으로 데이터를 분석합니다. 크롤링에 대한 기본을 응용하여 유용한 정보를 수집하고 분석하는 방법에 대해서는 다음에 살펴보겠습니다.

반응형

댓글