[파이썬] requests 페이징 처리된 웹 페이지 요청하기

이번 블로그에서는 파이썬의 Requests 라이브러리를 사용하여 페이징 처리된 웹 페이지를 요청하는 방법에 대해 알아보겠습니다.

요구 사항

페이징 처리된 웹 페이지란, 하나의 웹 페이지 안에 여러 페이지가 있으며, 사용자가 ‘다음 페이지’ 버튼을 클릭하여 다음 페이지로 이동할 수 있는 형태를 말합니다. 이때 우리는 Requests 라이브러리를 사용하여 이러한 페이징 처리된 웹 페이지를 요청하고 그 데이터를 가져올 수 있어야 합니다.

Requests 라이브러리 설치하기

먼저, Requests 라이브러리를 설치해야 합니다. pip를 사용하여 다음과 같이 설치할 수 있습니다.

pip install requests

페이징 처리된 웹 페이지 요청하기

Requests 라이브러리를 사용하여 페이징 처리된 웹 페이지를 요청하는 방법은 매우 간단합니다. 먼저, 첫 번째 페이지의 URL을 사용하여 요청을 보낸 다음, 응답을 확인합니다. 그런 다음, ‘다음 페이지’ 버튼을 클릭하여 요청을 반복적으로 보내면 됩니다.

다음은 간단한 예시 코드입니다.

import requests

def get_paginated_data(url):
    data = []
    next_page = url

    while next_page:
        response = requests.get(next_page)
        response_data = response.json()

        # 데이터 처리
        data.extend(response_data['results'])

        # 다음 페이지 URL 가져오기
        next_page = response_data['next']

    return data

위의 코드에서는 get_paginated_data 함수를 정의하고, 주어진 URL에서 시작하여 모든 페이지의 데이터를 가져오는 기능을 구현했습니다. 이 함수를 호출하면 모든 데이터가 담긴 리스트가 반환됩니다.

요약

이번에는 Requests 라이브러리를 사용하여 페이징 처리된 웹 페이지를 요청하는 방법을 살펴보았습니다. 간단한 예시 코드를 통해 어떻게 페이징 처리된 데이터를 가져올 수 있는지 알아보았습니다. 이를 활용하여 웹 크롤링이나 데이터 수집 작업에 유용하게 사용할 수 있습니다.

더 자세한 내용은 Requests 라이브러리의 공식 문서를 참조해보시기 바랍니다.