-0.2 C
Seoul
토요일, 12월 21, 2024

spot_img

티스토리 워드프레스 자동 포스팅 1편

시간이 부족하거나 단순 반복적인 사무 업무를 하는 사람이라면 파이썬 코딩을 배우는 것이 좋다. 파이썬 코딩은 누구나 손쉽게 배울 수 있고, 업무자동화 및 디지털 마케팅에도 도움이 된다. 요즘은 인공지능 AI서비스가 오픈되어 코딩을 모르는 사람도 누구나 쉽게 할 수 있다.

따라서, 우리는 티스토리 API의 자동 게시를 통해 Python 코드를 공유한다. 티스토리 블로그를 자동화하기 위해선 APP ID와 Secret Key, accesstoken 이렇게 3가지가 필요하다. 이번에는 티스토리를 API 키를 발급받는 방법을 알아보겠습니다. 메인 텍스트와 이미지까지 업로드하여 Python으로 자동으로 게시하는 방법을 알아본다.

티스토리 API 키를 발급 받는 방법

위에서 언급 했듯이 티스토리 블로그를 자동화하기 위해선 APP ID와 Secret Key, access token 이렇게 3가지가 필요하다.

1. APP ID와 Secret Key 발급받기(앱등록)

먼저 아래 사이트로 가서 앱 등록 이후 API 키를 발급받아야 한다. 우선 아래 사이트로 가서 앱을 등록하고 API 키를 받자.

해당 부문을 꼭 확인하고 넘어가야 합니다. 이외 반드시 읽기, 쓰기 체크도 있어야 합니다. 이후 오픈 API 이용약관을 읽어보고 체크하면 넘어가면 됩니다. 서비스 URL엔 본인 티스토리 주소를 입력하면 됩니다.

2. Access Token 발급받기

Access Token을 얻기 위해서는 ‘Authorize Code’라는 정보가 필요하다. 우리가 모르는 것은 ‘Authorize Code’이기 때문에 아래와 같이 메모장에 입력하여 가져온다.

1) 크롬 브라우저를 이용한 방법

예시)
https://www.tistory.com/oauth/authorize?client_id=a2e21b270&redirect_uri=http://tistory.com/&response_type=code=123

  • 위 수정한 URL주소를 크롬 브라우저 주소창에 URL을 클릭하면 ~을 추가로 허가하시겠습니까? 그 문구가 나온다. 주저 없이 허가하기를 클릭하고 계속합니다.

 

  • 그러면 URL이 변경되고, 변경된 URL 안에 https://aboda.tistory.com/?code=123456&state=와 같은 섹션이 있을 것입니다. 해당 주소 URL는 Authorize Code로 잘 메모장에 저장한다.
  • 위 화면에서 오른쪽 마우스→검사& F12 & ctrl+shift+i→네트워크
    -아래 코드를 빨간 부분을 수정 후 한 줄로 만들어 주소창에 검색한다.

https://www.tistory.com/oauth/access_token?
client_id=a2e21b270&
client_secret=a2e21b2700000&
redirect_uri=http://tistory.com/&
code=123456&
grant_type=authorization_code

  • 위에 입력한 주소를 빈 브라우저에 붙여 넣고 Enter 키를 누릅니다.
    – 빈 브라우저를 띄우고 F12 &
  • 네트워크 클릭
  • 하단- 이름- access_token 복사

2) 파이썬을 이용한 방법

아래 코드를 입력하여 authentication code를 발급받아야 합니다. 이전에 발급받은 앱 아이디와 시크릿 키를 입력하고, 콜백 URL 공란에 본인 티스토리 주소를 입력하면 됩니다. 발급받은 authentication 코드를 메모해 두세요.

 

API access code 발급받기

  • Authentication Code 받기
  • APP ID와 Secret Key를 아래의 코드에 삽입하고 크로 주소 창에서 실행한다:

#access_token 받기 1
import requests
import re

app_id = ‘#appid키 입력’
secret_key = ‘ #secret_key 키 입력 ‘
callback_uri =’#티스토리 주소 입력 ‘

# authentication_code 얻기
url = ‘https://www.tistory.com/oauth/authorize?client_id=’+ app_id + ‘&redirect_uri=’+ callback_uri + ‘&response_type=code’
print(url) #url 클릭

 

해당 URL을 클릭하면 ~을 추가로 허가하시겠습니까? 그 문구가 나온다. 주저 없이 허가하기를 클릭하고 계속합니다.

  • 실행 버튼 클릭
  • 하단 링크 클릭 & Ctrl+클릭
  • 열기
  • 허가하기
  • URL 주소 복사

 

  • 그러면 URL이 변경되고, 변경된 URL 안에 https://aboda.tistory.com/?code=123456&state=와 같은 섹션이 있을 것입니다. 해당 코드 필드는 인증 코드입니다. 잘 기록해서 아래 authentication_code 란에 입력해요.
  • 아래의 코드는 위 파이썬 코드 밑에 이어 복사 붙여 넣기 하여 실행한다.

#access_token 받기 & 인증
authentication_code = '123456' #해당 code 입력
url_2 = 'https://www.tistory.com/oauth/access_token'
params = {
'client_id': app_id,
'client_secret': secret_key,
'redirect_uri': callback_uri,
'code': authentication_code,
'grant_type': 'authorization_code'
}
res = requests.get(url_2, params=params)
if res.status_code == 200:
print(res.text.replace('access_token=', ''))
else:
print(res)
#access_token 최종 받기

  • API access token 인증확인

이제 최종 access_token을 입력할 수 있습니다. 아래는 T-story API가 정상적으로 작동하는지 확인하는 파이썬 코딩 인증 확인 공간입니다.

  • appid, access_token을 입력하고 다른 콜백 URL에 T-story 주소를 입력합니다.
  • 마지막으로, 여러분은 티스토리의 aboda.tistory.com에서 블로그 이름 카테고리를 다시 입력할 수 있습니다.
  • 그리고 코드 실행. 200개가 나타나면 정상 인증이 완료된 것입니다.

#access_token을 통한 인증확인
import requests

appid = "a2 e21 b270 " #앱 ID 입력
access_token = " 1234557" #access_token 입력
callback_url = "https://aboda.tistory.com/" #티스토리 주소 입력
blogName = "https://aboda.tistory.com/" #티스토리 주소 입력
url = "https://www.tistory.com/apis/category/list"
params = { 'access_token': access_token,
'output': 'json',
'blogName': blogName
}

res = requests.get(url, params=params)
if res.status_code == 200:
res_json = res.json()
print(res_json)

3.  API 자동 포스팅 이미지 업로드

먼저 blogname에 자신의 것을 입력하고 access_token을 입력한 다음 test_image_path 열에 이미지를 등록합니다.
아래 태그 열은 태그 키워드입니다. 또한 제목은 제목이고 내용은 텍스트의 내용입니다. 아직 T스토리 html 작업이 지원되기 때문에 html 소스로 작성했습니다. 물론 파이썬으로 작성하시면 됩니다. 이후 코드를 실행하고 최종 응답 200 코드를 받으면 최종 T스토리 API를 통한 파이썬 자동 포스팅이 완료된다.

#이미지 업로드
import requests
import json

blogName = ''#티스토리 블로그 이름 입력
access_token = ''# 액세스토큰입력
tistory_url = 'https://www.tistory.com/apis/post/write'#url
test_image_path = ''이미지 디렉터리 입력

files = {'uploadedfile': open(test_image_path, 'rb')}
params = {'access_token': access_token, 'blogName': blogName, 'targetUrl': blogName, 'output': 'json'} rd = requests.post('https://www.tistory.com/apis/post/attach', params=params, files=files)
item = json.loads(rd.text)
test_image = item ["tistory"]["replacer"]

tags = "테스트 1, 테스트 2, 테스트 3, 테스트 4"#태그는 쉼표로 구분 title = '[테스트] 테스트입니다.'#제목
content = '<p data-ke-size="size16"> 테스트입니다. </p>'#본문
content += '<p data-ke-size="size16"> 테스트입니다. </p>'
content += '<p>'+ test_image +'</p>'

parameters = {
   'access_token': access_token,
    'output': '{output-type}',
    'blogName': blogName,
    'title': title,
    'content': content,
    'visibility': '3',
    'category': '48508',
    'tag': tags,
    'acceptComment': '1'
}

requests.post(tistory_url, params=parameters)  #최종완료 Response가 200 일시 완료임.

마무리

– 참고로 액세스 토큰을 받지 못했거나 정상적으로 받았지만 두 번 누른 경우 등입니다.
– 오류가 발생하면 코드 부분만 다시 수신하고 변경한 다음 액세스 토큰을 다시 수신해야 합니다.

이번 포스팅은 자동화 블로그 운영을 위한 티스토리 API 키를 발급받는 방법! 에 대해 알아봤습니다

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

Related Articles

Stay Connected

18,393FansLike
128,393FollowersFollow
81,934SubscribersSubscribe

Latest Articles