Requests 모듈 기초
파이썬의 requests모듈은 웹 문서를 크롤링 하는데 필요한 모듈이다! 주요 함수인 get함수가 있다!!
- get 함수 기초
: 파이썬의 requests 모듈은 웹에 HTTP 요청을 보내는 역할을 함.
: requests 모듈을 이용하여 HTTP 요청을 보내고 HTML 코드를 받는 함수는 get 함수! 이 함수는 url을 입력으로 받으면, 결과 값을 응답 객체에 담아 반환한다.

: 응답 객체는 status_code, text, content라는 세가지 속성을 갖는다.
- status_code = HTTP 요청이 정상적으로 이루어졌는지 알려주는 코드 (200)
- text = HTML 코드를 텍스트로 반환함.
- content = HTML 코드를 바이트로 변환함.
[get 함수를 사용하여 네이버의 HTML코드 가져오기 실습]
import requests
url = 'http://www.naver.com'
response = requests.get(url)
print('상태:', response.status_code)
print(response.text[:100])
print(response.content[:100])
# </br>상태: 200<!doctype html> <html lang="ko" data-dark="false"> <head> <meta charset="utf-8"> <t</br>b'\n<!doctype html> <html lang="ko" data-dark="false"> <head> <meta charset="utf-8"> <t'</br>
: 응답 객체의 text와 content 속성은 문자열 자료형이므로 슬라이싱 지원함!
- get 함수의 params 인자
: 일반적으로 url에는 하나 이상의 파라미터가 포함되어 있음.
: get함수의 params 인자[사전형] 를 사용하면 이러한 종류의 url을 가지고 HTTP 요청을 할 수 있음.

: 같은 속성을 가지는 url을 바탕으로 웹 페이지를 가져와야 하는 상황이 매우 흔하게 발생됨.
- 리뷰 데이터는 한 상품에 여러 개의 리뷰 페이지로 구성되는데, 각 페이지의 주소는 url의 파라미터만 다른 경우가 많음
[get 함수를 사용하여 리뷰 페이지 가져오기 실습]
: 1부터 10 의 리뷰 페이지를 가져오기
import requests
from requests.models import response
url = 'https://movie.naver.com/movie/bi/mi/review.nhn'
parameter = {'code':96951}
HTML_list = []
for page_num in range(1,11):
parameter['page'] = page_num
response = requests.get(url, params= parameter)
if response.status_code == 200:
HTML_list.append(response.text)
print(len(HTML_list))
print(HTML_list[0][1000:1000])
: parameter['page'] = page_num
- parameter 라는 사전 자료형의 요소를 추가 하거나 수정하기 위한 코드
'Data Analysis > Python' 카테고리의 다른 글
[Openpyxl] Openpyxl을 이용한 엑셀 자동화 (0) | 2022.05.15 |
---|---|
[Pandas] 데이터 기능 대체하기 (0) | 2022.05.14 |
[Matplotlib] Matplotlib을 이용한 그래프 그리기-2 (0) | 2022.04.02 |
[Matplotlib] Matplotlib을 이용한 그래프 그리기 (0) | 2022.04.02 |
[Pandas] 데이터 불러오기 & 확인하기 (0) | 2022.03.31 |
댓글