> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 API 작업: 실용 가이드

Python에서 API 작업: 실용 가이드

Susan Sarandon
풀어 주다: 2025-01-04 01:09:39
원래의
656명이 탐색했습니다.

발췌:
“API는 소프트웨어 애플리케이션을 모듈화합니다. 소프트웨어 개발 시간이 단축됩니다.

애플리케이션 프로그래밍 인터페이스(또는 API)는 다양한 소프트웨어 애플리케이션과 구성 요소 간의 통신을 가능하게 하는 추상화된 계층입니다. 이 의사소통은 어떻게 이루어지나요? 이 기사에서 우리가 다룰 웹 API는 클라이언트가 사용하는 소프트웨어 애플리케이션과 정보가 저장되는 데이터베이스 사이에 위치합니다. 여기에서 다양한 유형의 API에 대해 읽어보세요. 통신은 개별 소프트웨어 애플리케이션이 작성된 프로그래밍 언어에 관계없이 발생합니다. Python, Java, JavaScript 등인지 여부. 검색, 업데이트, 삭제 또는 생성 작업 등 소프트웨어 애플리케이션에서 API로 전송된 요청이 유효한 경우.

특정 사용자가 사진을 게시하는 Instagram과 같은 소셜 미디어 플랫폼을 상상해 보세요. 내부적으로는 사용자가 규정된 Instagram API 엔드포인트에 POST 요청을 보내는 것입니다. 데이터베이스에 사진을 보내는 중입니다. 다른 사용자는 타임라인을 스크롤할 때 자신도 모르게 API에 GET 요청을 하여 해당 게시물을 보게 됩니다. API를 통해 통신이 이루어지는 것을 볼 수 있습니다.

두 사용자가 서로 다른 언어로 작성된 소프트웨어 애플리케이션을 사용하여 API를 통해 통신하는 경우에도 마찬가지입니다.
아래 그림은 API를 통해 통신하는 두 가지 별도의 소프트웨어 애플리케이션을 보여줍니다.

Working with APIs in Python: A Practical Guide

작가의 사진

또한 API는 소프트웨어 애플리케이션을 모듈식으로 만듭니다. 소프트웨어 개발 시간을 단축합니다. API 구현이 코드 베이스와 분리되어 있다는 점에서 모듈식이므로 API를 호출하기만 하면 됩니다. API가 처음부터 수행하는 것과 유사한 기능을 제공하는 코드를 작성할 필요 없이 호출하기만 하면 되므로 개발 시간이 단축됩니다.

이 기사에서는 Python을 사용하여 공개적으로 사용 가능한 API를 활용하는 방법을 알아봅니다. 계속 지켜봐 주시기 바랍니다.

전제조건

이 기사는 Python의 특정 구현을 통해 API에 대한 이해를 넓히려는 초급 Python 프로그래머에게 적합합니다.
함께 연습하려면 컴퓨터가 인터넷에 연결되어 있는지 확인하세요.

이 기사는 경험이 풍부한 Python 개발자에게 복습의 역할도 합니다.

목표

이 기사를 끝까지 읽으면 다음을 수행해야 합니다.
Python의 요청 라이브러리에 대해 알아보세요.
GET, PUT, PATCH, DELETE 및 POST 요청 방법을 알아보세요.
API 호출에서 받은 데이터를 코드 내부에 저장하고 활용하는 방법을 알아보세요.

요청 라이브러리 이해

requests는 pypi에 따르면 매주 약 3천만 건의 다운로드를 기록하는 가장 많이 다운로드되는 Python 패키지 중 하나입니다. Python에서 HTTP 요청을 쉽게 보낼 수 있습니다. 요청은 IBM과 같은 많은 유명 브랜드에서 사용되는 테스트되고 신뢰할 수 있는 Python 패키지입니다. 여기에서 소스코드를 찾아보세요.
요청의 "사랑받는" 기능 중 일부는 다음과 같습니다.

  • Keep-Alive 및 연결 풀링

  • 국제 도메인 및 URL

  • 쿠키 지속성이 있는 세션

  • 브라우저 방식 SSL 확인

  • 콘텐츠 자동 디코딩

  • 기본/다이제스트 인증

  • 우아한 키/값 쿠키

  • 자동 압축 해제

  • 유니코드 응답 본문

  • HTTP(S) 프록시 지원

  • 다중 파일 업로드

  • 스트리밍 다운로드

  • 연결 시간 초과

  • 청크 요청

  • .netrc 지원

요청 시작하기

컴퓨터에 이미 Python이 설치되어 있다고 가정합니다. 아래 지침에 따라 요청 패키지를 설치하십시오.
Linux 또는 Mac OS에서 터미널을 열고 다음을 수행하세요.

python3 -m pip install requests
로그인 후 복사
로그인 후 복사

Windows에서는 다음을 수행하세요.

python -m pip install requests
로그인 후 복사
로그인 후 복사

이렇게 하면 요청 패키지가 컴퓨터에 다운로드됩니다.

GET 요청하기

기존 데이터를 검색하기 위해 GET 요청이 이루어졌습니다. 원하는 속성을 호출하여 요청에 대한 자세한 내용을 얻기 위해 추가로 탐색할 수 있는 개체를 반환합니다. 아래의 사용 예를 참조하세요.

  • Python 파일(예: get_request.py)을 만들고 해당 파일에 다음 코드를 작성합니다.
# Import the requests module
import requests

# Making a simple GET request
response_object = requests.get("https://jsonplaceholder.typicode.com/posts")

로그인 후 복사
로그인 후 복사

response_object에서 다양한 속성을 호출할 수 있습니다.
status_code: 응답의 HTTP 상태 코드입니다.

  • .text: 문자열로 된 응답 본문
  • .json(): 응답 본문을 JSON으로 구문 분석합니다(해당되는 경우).
  • .content: 원시 바이트 형태의 응답 본문입니다.
  • .headers: 응답 헤더 사전입니다.
  • .cookies: 서버가 설정하는 쿠키입니다.
  • .url: 리디렉션 후의 최종 URL입니다.
  • .경과됨 이 기사에서는 .json() 속성에 더 중점을 둘 것입니다. request.py 파일에서 response_object의 .json() 속성을 ​​호출하세요.
json_data = response_object.json()
print(json_data)
로그인 후 복사
로그인 후 복사

반환된 JSON은 json_data 변수에 저장되며 프로그램 내에서 사용할 수 있습니다.
다음 내용이 콘솔에 출력됩니다.

Working with APIs in Python: A Practical Guide

POST 요청하기

POST 요청은 지정된 엔드포인트로 데이터를 전송하여 새 레코드를 생성합니다. 이미 존재하는 데이터를 검색하려는 GET 메소드와는 다릅니다. 게시물을 요청하려면 아래 단계를 따르세요.

  • post_request.py 또는 편리한 이름으로 새 파일을 만듭니다. 파일에 다음 코드를 작성합니다.
python3 -m pip install requests
로그인 후 복사
로그인 후 복사

이것은 지정된 엔드포인트로 데이터를 전송하고 응답 객체도 반환합니다. 이 객체는 전송된 POST 요청에 대한 몇 가지 유용한 정보를 가지고 있습니다. 객체에 적합한 속성을 호출하여 접근할 수 있습니다.
작업이 성공했는지 확인하려면 응답 객체의 status_code 속성을 ​​호출하세요. 코드를 업데이트하세요.

python -m pip install requests
로그인 후 복사
로그인 후 복사

POST 요청이 성공했고 새 리소스가 생성되었음을 나타내는 201을 반환합니다. 아래 이미지와 같습니다.

Working with APIs in Python: A Practical Guide

PUT 요청하기

PUT 요청에는 기존 기록을 새 기록으로 교체하는 작업이 포함됩니다. 발신자 또는 클라이언트로부터 새로운 데이터를 가져와 기존 데이터를 대체합니다.
PUT 요청 방법은 다음과 같습니다.

  • 새 Python 파일을 만듭니다. 이 기사에서는 put_request.py를 사용합니다. 그 안에 다음 코드를 작성하세요.
# Import the requests module
import requests

# Making a simple GET request
response_object = requests.get("https://jsonplaceholder.typicode.com/posts")

로그인 후 복사
로그인 후 복사

DELETE 요청하기

이렇게 하면 특정 기록이나 데이터가 제거됩니다. 제거할 레코드는 항상 일반적으로 지정되는 고유 ID를 통해 지정됩니다.
DELETE 작업을 수행하는 방법은 다음과 같습니다.

  • 새 Python 파일을 만듭니다. 이 기사에서는 delete_request.py를 사용합니다. 그 안에 다음 코드를 작성하세요.
json_data = response_object.json()
print(json_data)
로그인 후 복사
로그인 후 복사

패치 요청하기

기존 기록이나 데이터를 부분적으로 변경하고 싶을 때마다 PATCH 방식을 사용하세요.

  • 새 Python 파일을 만듭니다. 이 문서에서는 patch_request.py를 사용합니다. 그 안에 다음 코드를 작성하세요.
# Import the requests module
import requests


# Making a simple POST request


data = {'userId': 1, 'id': 1, 'title': 'This is for POST request', \
        'body': 'This body is modified for this technical writing article by Augustine Alul'}
response_object = requests.post("https://jsonplaceholder.typicode.com/posts/", data=data)


print(response_object.status_code)

로그인 후 복사

결론

requests 라이브러리는 Python 코드에서 HTTP 요청을 만드는 간단한 방법을 제공합니다. API와 쉽게 상호 작용할 수 있으며 원하는 속성을 호출하기만 하면 요청에 대한 유용한 정보를 제공하는 개체를 반환합니다(속성은 기사에서 찾을 수 있음).
Python에서 API 작업이 이보다 더 쉬울 수는 없습니다. Python에서 API와 상호작용하는 데 널리 사용되는 다른 라이브러리가 있지만 단순함을 위해 요청 라이브러리가 선택되었습니다.
이 기사를 끝까지 읽어 주셔서 감사합니다. 이 내용은 Python에서 API 작업을 시작하는 데 좋은 배경 지식을 제공합니다.

위 내용은 Python에서 API 작업: 실용 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿