본문 바로가기

파이썬을 활용한 티스토리 API 활용법

|||||||||||||| 2023. 8. 11.

파이썬을 활용하여 티스토리 API를 통해 블로그를 관리하는 방법에 대해 알아보겠습니다. 이 글은 파이썬을 사용하는 개발자와 티스토리 블로그를 운영하는 분들에게 유용한 정보를 제공하고자 합니다.

안녕하세요, 여러분! 오늘은 파이썬을 활용하여 티스토리 API를 사용하는 방법에 대해 알아보려고 합니다. 티스토리는 국내에서 많은 사람들이 이용하는 블로그 플랫폼 중 하나입니다. 그런데 여러분은 티스토리 블로그를 파이썬을 통해 자동으로 관리할 수 있다는 사실을 알고 계셨나요?

네, 맞습니다! 파이썬과 티스토리 API를 활용하면 글 작성, 수정, 삭제 등의 작업을 코드로 자동화할 수 있습니다. 특히 반복적인 작업이나 대량의 데이터를 처리해야 할 때 이 방법은 매우 효율적입니다. 이번 아티클에서는 이러한 내용을 상세하게 다룰 예정이니, 티스토리 블로그를 운영하시는 분이나 파이썬에 관심이 있는 분들은 꼭 읽어보시길 바랍니다. 궁금증을 가지고 계신 분들, 준비되셨나요? 함께 파이썬의 세계로 빠져보겠습니다!

티스토리 API와 파이썬의 만남

티스토리 API는 블로그의 다양한 기능을 외부에서 접근하여 사용할 수 있게 해주는 도구입니다. 그리고 파이썬은 이러한 API를 활용하여 블로그를 자동화하거나 관리하는 데 매우 유용한 프로그래밍 언어입니다. 이 두 가지의 조합은 블로그 운영자에게 큰 힘이 될 수 있습니다.

  • API의 중요성: API는 Application Programming Interface의 약자로, 다양한 애플리케이션들이 서로 통신하거나 정보를 주고받을 수 있게 해주는 중간 다리 역할을 합니다. 티스토리 API는 블로그의 글 작성, 수정, 삭제 등의 기능을 제공하며, 이를 통해 블로그 운영을 더 효율적으로 할 수 있습니다.
  • 파이썬의 강점: 파이썬은 코드가 간결하고, 다양한 라이브러리와 프레임워크를 지원합니다. 특히 웹과 관련된 작업에 있어서 파이썬은 매우 강력한 언어로 알려져 있습니다. 티스토리 API를 파이썬으로 접근하면, 복잡한 작업도 간단한 코드 몇 줄로 해결할 수 있습니다.
  • 티스토리 API와 파이썬의 조합: 이 두 가지를 조합하면, 블로그 글을 자동으로 업로드하거나, 특정 조건에 맞는 글을 검색하고 수정하는 등의 작업을 쉽게 할 수 있습니다. 예를 들어, 특정 키워드가 포함된 글만 검색하여 일괄 수정하거나, 일정 시간마다 자동으로 글을 업로드하는 것이 가능합니다.

이렇게 티스토리 API와 파이썬을 활용하면, 블로그 운영의 효율성을 크게 높일 수 있습니다. 특히 반복적인 작업이나 대량의 데이터 처리에 있어서는 이 조합이 더욱 빛을 발합니다. 다음 섹션에서는 이를 구체적으로 어떻게 활용할 수 있는지, 실제 코드 예제와 함께 살펴보도록 하겠습니다.

 

 

API 사용 준비

티스토리 API를 파이썬에서 사용하기 위해서는 몇 가지 준비 작업이 필요합니다. 이 작업은 API를 안전하게 사용하기 위한 인증 과정과 필요한 라이브러리 설치 등을 포함하고 있습니다. 그럼, 티스토리 API를 파이썬에서 활용하기 위한 준비 과정을 함께 살펴보겠습니다.

1. 티스토리 계정 준비

먼저 티스토리에 가입된 계정이 필요합니다. API를 사용하기 위해서는 해당 계정으로 로그인하여 개발자 등록을 해야 합니다.

2. API 키 발급

티스토리 개발자 센터에서 애플리케이션을 등록하면, 해당 애플리케이션을 위한 API 키가 발급됩니다. 이 키는 API를 호출할 때 필요하므로 안전한 곳에 보관해야 합니다.

 

아래 링크를 클릭해서 티스토리 API 등록 사이트로 이동합니다.

 

 

Tistory

좀 아는 블로거들의 유용한 이야기

www.tistory.com

 

티스토리 API

위 사진과 같은 페이지를 볼 수 있습니다.

 

티스토리 API

해당 내용들을 모두 입력하고 등록버튼을 클릭합니다.

 

티스토리 API

그럼 위 사진과 같이 App IDSecret Key를 발급 받을 수 있습니다.

App IDSecret Key를 가지고 인증과 Authentication code를 발급 받을 수 있습니다.

 

3. 인증 요청 및 Authentication code 발급

사용자의 티스토리의 데이터 접근을 위해서 사용자에게 티스토리 인증요청을 합니다. 티스토리 API를 사용하기 위해서는 사용자 인증이 필요합니다. 이를 위해 OAuth2.0 인증 방식을 사용합니다. 아래의 URL로 사용자가 접근하도록 하면 인증절차가 진행되며 사용자가 티스토리에 로그인하지 않은 경우 로그인 후에 인증 절차가 진행됩니다.

https://www.tistory.com/oauth/authorize?
  client_id={client-id}
  &redirect_uri={redirect-uri}
  &response_type=code
  &state={state-param}
  • 위 URL의 매개변수는 아래와 같습니다.
    • client_id: 클라이언트 정보의 Client ID 입니다. 2번에서 받은 App ID를 입력한다.
    • redirect_uri: 사용자가 인증 후에 리디렉션할 URI입니다. 클라이언트 정보의 Callback 경로로 등록하여야 하며 등록되지 않은 URI를 사용하는 경우 인증이 거부됩니다. 2번에서 입력한 블로그 URL을 입력한다.
    • response_type: 항상 code를 사용합니다.
    • state: 사이트간 요청 위조 공격을 보호하기 위한 임의의 고유한 문자열이며 리디렉션시 해당 값이 전달됩니다. (필수아님)

 

티스토리 API

위 사진과 같이 매개변수를 입력하고 인터넷 브라우저에서 URL을 입력합니다.

 

티스토리 API

Tistory OAUTH 페이지가 나오게 되고 허가하기 버튼을 클릭합니다.

 

티스토리 API

입력한 블로그로 리디렉션되고 인터넷 브라우저의 주소창을 보면 아래 사진의 모자이크 된 글자처럼 Code 쿼리가 생성된 것을 볼 수 있습니다. 이것이 Authentication code입니다. 안전한 곳에 보관해야 합니다.

티스토리 API

 

 

4. Access Toke 발급

아래 URL을 사용해서 위에서 발급 받은 Authentication code을 Access Token과 교환해야 합니다. 이때 2번에서 받은 Secret Key가 반드시 서버에서 수행되어야 합니다.

GET https://www.tistory.com/oauth/access_token?
  client_id={client-id}
  &client_secret={client-secret}
  &redirect_uri={redirect-uri}
  &code={code}
  &grant_type=authorization_code
  • 매개변수는 다음과 같습니다.
    • client_id: 클라이언트 정보의 Client ID 입니다. 2번에서 받은 App ID를 입력한다.
    • client_secret: 클라이언트 정보의 Secret Key 입니다. 이 정보는 티스토리와 Client만이 공유해야하며 절대 외부에 공개되면 안됩니다. 2번에서 받은 Secret Key를 입력한다.
    • redirect_uri: 인증요청시 사용한 리디렉션 URL로 요청검증을 위해 사용합니다. 2번에서 입력한 블로그 URL을 입력한다.
    • code: 리디렉션으로 전달받은 code를 그대로 사용합니다. 3번에서 받은 Authentication code를 입력한다.
    • grant_type: 항상 authorization_code를 사용합니다.

 

GET 메소드로 전송해야 하기 때문에 저는 Postman이라는 프로그램을 사용했습니다. Postman은 HTTP 요청을 전송하고 응답을 볼 수 있는 프로그램으로 이런 API를 사용할 때 매우 유용합니다. 나중에 시간이 될 때 따로 소개해보도록 하겠습니다.

 

Access Toke 발급

위 사진과 같이 입력을 하고 전송했습니다.

 

Access Toke 발급

정상적으로 Access Toke이 응답이 왔고 정상 발급 되었습니다.

 

5. 필요한 라이브러리 설치

파이썬에서 API를 쉽게 호출하기 위해 requests 라이브러리를 설치해야 합니다.

pip install requests

 

6. API 호출 테스트

준비가 완료되면 간단한 API 호출을 통해 정상적으로 작동하는지 테스트할 수 있습니다. 예를 들어, 블로그의 정보를 가져오는 API를 호출하여 결과를 확인해볼 수 있습니다. 파이썬 코드로 호출 테스트를 해도 되지만 위에서 사용했던 Postman으로 테스트를 진행했습니다. 아래 링크의 티스토리 API 공식 사이트에서 URL과 파라미터를 참고해서 진행했습니다.

 

 

 

소개 · GitBook

No results matching ""

tistory.github.io

 

API 호출 테스트

위 사진처럼 GET 메소드로 URL과 파라미터로 access_token과 output을 전송하니 제가 가진 블로그들의 정보들을 json형태로 응답을 해줬습니다. 티스토리 API를 정상적으로 사용할 수 있는 것을 확인 했습니다.

이제 티스토리 API를 파이썬에서 사용하기 위한 기본적인 준비가 완료되었습니다. 이를 통해 다양한 블로그 관리 작업을 자동화하거나, 특정 데이터를 분석하는 등의 작업을 진행할 수 있습니다. 다음 섹션에서는 실제로 API를 호출하는 방법과 활용 사례에 대해 자세히 알아보겠습니다.

 

 

티스토리 API 예제

블로그 정보

티스토리 계정이 보유하고 있는 블로그들의 정보를 읽어올 수 있습니다.

 

블로그 정보

위 사진과 같이 코드를 작성해서 실행해 보았습니다.

 

블로그 정보

위 사진과 같이 정상적으로 블로그 정보에 대한 응답을 받을 수 있었습니다.

 

<코드>

import  requests
import  json

url = "https://www.tistory.com/apis/blog/info"
access_token = 'access_token'    # access_token 입력
output_type = 'json'

params = {
    "access_token": access_token,
    "output": output_type
} 

response = requests.get(url, params=params)
print(response)
print(json.dumps(response.json(), indent=4))

 

글 읽기

발급받은 Access Token을 활용하여 티스토리 블로그의 글을 읽어올 수 있습니다.

 

글 읽기

위 사진과 같이 코드를 작성해서 실행해 보았습니다.

 

글 읽기

위 사진과 같이 정상적으로 작성된 글에 대한 응답을 받을 수 있었습니다.

 

<코드>

import requests
import json

url = "https://www.tistory.com/apis/post/list"

access_token = 'access_token'    # access_token 입력
output_type = 'json'
blog_name = 'blog_name '  # xxxx.tistory.com에서 "xxxx" 부분 입력
page_number = 1

params = {
    "access_token": access_token,
    "output": output_type,
    "blogName": blog_name,
    "page": page_number
}

response = requests.get(url, params=params)
print(response)
print(json.dumps(response.json(), indent=4))
posts = response.json().get('tistory').get('item').get('posts')
for post in posts:
    print(post['title'])

 

글 쓰기

API를 사용하여 티스토리 블로그에 글을 작성할 수 있습니다.

 

글 쓰기

위 사진과 같이 코드를 작성해서 실행해 보았습니다.

 

글 쓰기

위 사진과 같이 응답이 옵니다. 그럼 글이 정말 작성되었는지 확인해 보겠습니다.

 

글 쓰기

위 사진과 같이 정상적으로 글이 작성된 것을 확인할 수 있습니다.

 

<코드>

import requests
import json

url = "https://www.tistory.com/apis/post/write"

access_token = 'access_token'    # access_token 입력
output_type = 'json'
blog_name = 'blog_name'    # xxxx.tistory.com에서 "xxxx" 부분 입력
title = 'Title: Tistory API Test'
content = 'Content: Tistory API Test'
visibility = 0

params = {
    "access_token": access_token,
    "output": output_type,
    "blogName": blog_name,
    "title": title,
    "content": content,
    "visibility": visibility
}

response = requests.post(url, params=params)
print(response)
print(json.dumps(response.json(), indent=4))

 

 

마무리

파이썬과 티스토리 API를 활용하면 블로그 관리가 훨씬 효율적으로 이루어질 수 있습니다. 이번 아티클에서는 티스토리 API의 기본적인 사용 방법부터 글을 읽고 쓰는 방법까지 알아보았습니다. API를 활용하면 수동으로 블로그를 관리하는 것보다 훨씬 빠르고 정확하게 작업을 수행할 수 있습니다. 특히, 대량의 데이터를 처리하거나 반복적인 작업을 자동화할 때 큰 장점을 느낄 수 있습니다.

 

활용 팁

  1. 정기적인 백업: 티스토리 API를 활용하여 블로그의 모든 글을 주기적으로 백업할 수 있습니다. 이렇게 하면 데이터 손실의 위험을 최소화할 수 있습니다.
  2. 글 분석: API를 통해 블로그의 글을 가져와서 특정 키워드나 문구의 빈도를 분석할 수 있습니다. 이를 통해 인기 있는 주제나 키워드를 파악할 수 있습니다.
  3. 대량 업로드: 여러 글을 한 번에 업로드해야 할 경우 API를 활용하면 편리합니다. 특히, 다른 플랫폼에서 티스토리로 이전할 때 유용하게 사용될 수 있습니다.
  4. 자동화: 파이썬 스크립트와 함께 크론탭(crontab) 등의 도구를 사용하여 특정 시간에 글을 자동으로 게시하거나 업데이트할 수 있습니다.
  5. 티스토리 API 제한: 티스토리 API는 일정 시간 동안의 요청 횟수에 제한이 있습니다. 따라서 대량의 요청을 보낼 때는 이를 고려하여 적절한 간격을 두고 요청을 보내야 합니다.

이렇게 파이썬과 티스토리 API를 활용하면 블로그 관리와 관련된 다양한 작업을 효과적으로 수행할 수 있습니다. 앞서 소개한 팁들을 활용하여 블로그 운영을 더욱 효율적으로 만들어보세요!

 

FAQs

Q. 티스토리 API를 사용할 때 주의해야 할 점은 무엇인가요?

A. 티스토리 API는 일정 시간 동안의 요청 횟수에 제한이 있으므로, 대량의 요청을 보낼 때는 적절한 간격을 두고 요청을 보내야 합니다.

 

Q. 파이썬 외의 다른 프로그래밍 언어로도 티스토리 API를 사용할 수 있나요?

A. 네, 티스토리 API는 RESTful API이므로 다양한 프로그래밍 언어로 사용이 가능합니다.

 

Q. API를 사용하여 글을 작성할 때 이미지나 동영상도 함께 업로드할 수 있나요?

A. 네, 티스토리 API를 통해 이미지나 동영상 등의 미디어 파일도 함께 업로드할 수 있습니다.

 

Q. API 인증 과정 중 문제가 발생하면 어떻게 해야 하나요?

A. 티스토리 개발자 센터나 관련 커뮤니티를 통해 문제를 해결할 수 있습니다.

 

Q. 티스토리 API를 활용한 프로젝트 예제는 어디서 볼 수 있나요?

A. 인터넷에는 티스토리 API를 활용한 다양한 프로젝트 예제와 튜토리얼이 공유되어 있습니다.

 

3줄 요약

  • 파이썬으로 티스토리 API 활용법 소개.
  • API를 통한 블로그 글 자동화 방법 제시.
  • 티스토리와 파이썬의 만남으로 블로그 관리 효율성 향상.

댓글