본문으로 바로가기



R4Tistory-ver 0.1.1 사용 설명서

category R4Tistory패키지 2017.06.10 21:50

R4Tistory 패키지의 메인 기능인 Rmarkdown을 사용한 원격 블로그 포스팅 기능을 업데이트 하였다. 따라서 오늘은 R4Tistory 패키지 버젼 0.1.1의 메인 기능인 블로그 포스팅 기능을 사용하는 방법에 대하여 설명하도록 하겠다.

다음의 총 4단계로 이루어져 있는데, 처음 1단계의 경우는 초기에 한번만 세팅하게 되고, 나중에는 2~4단계만을 사용하게 될 것이다.

    1. 티스토리 Open API 클라이언트 등록하기
    1. 토큰 발급받기
    1. 블로그에 사용할 Rmarkdown 파일 준비하기
    1. 포스팅하기

팩키지 설치 및 로드

R4Tistoryhttr, rmarkdown 그리고 devtools 패키지가 설치 되어있어야 한다. 이들 패키지가 없는 경우 패키지 설치 툴을 이용하여 설치하도록 하자. 다음은 R4Tistory를 설치하고 로드하는 명령어이다.

devtools::install_github("issactoast/R4Tistory")
library(R4Tistory)

1단계: 티스토리 Open API 클라이언트 등록하기

R4Tistory 패키지는 티스토리의 Open API와 연동하여 작동한다. 따라서 패키지를 위해 티스토리 Open API에 클라이언트로 등록을 해야한다. 등록 방법은 필자의 이전 티스토리 Open API 클라이언트 등록하기 포스팅을 참고하자.

2단계: 토큰 발급받기

1단계인 클라이언트 등록을 마쳤다면, 이제 자신의 client_idredirect_uri가 무엇인지 알게 되었을 것이다. 이제 아래의 코드에서 my_idmy_uri를 주어진 값으로 대체하여 R4Tistory 팩키지의 token_url_maker 함수에 넣고 실행하자.

my_id <- "자신의 client_id"
my_uri <- "자신의 redirect_uri"
token_url_maker(my_id, my_uri)
## [1] "https://www.tistory.com/oauth/authorize?client_id=자신의 client_id&redirect_uri=자신의 redirect_uri&response_type=token"

다음으로 결과값으로 나온 URL을 브라우져에 복사해서 붙여넣는다. 만약 여기까지 잘 실행이 되었다면, 아래의 그림과 같이 본인의 홈페이지 주소에 token=이라고 쓰여진 부분이 보일 것이다. 이것 토큰값을 사용하여 R4Tistory는 티스토리 블로그에 로그인을 할 수가 있다. 4단계에서 사용하기 위한 준비로 다음과 같이 my_token에 저장해 놓도록 하자.

my_token <- "받은 토큰 값 저장"

3단계: 블로그에 사용할 Rmarkdown 파일 준비하기

블로그에 포스팅 할 Rmarkdown 파일을 준비한다. Rmarkdown파일인 .Rmd파일의 헤더는 아래와 같이 설정해 준다. 이것은 포스팅의 결과가 최대한 티스토리 스킨과 어울리도록 하기 위함이다. 자세한 사항은 티스토리 블로그를 위한 Rmarkdown 세팅 포스팅을 참고하자.

title: "제목"
output:
  html_document:
    self_contained: TRUE
    keep_md: FALSE
    theme: NULL
    highlight: NULL

4단계: 포스팅하기

마지막으로 자신의 블로그에 포스팅 해야 할 단계이다. R4Tistorypost2Tistory() 함수는 다음의 3개의 인풋값을 사용한다.

  • fileName: 포스팅 할 파일명이다. 예를들어, 3단계에서 준비한 파일의 이름을 test.Rmd라고 할 경우, fileName은 “test.Rmd”이다.
  • my_blogName: 자신의 블로그 이름이다. 자신의 블로그 주소 http://xxx.tistory.com 의 xxx 부분을 의미한다.
  • token: 2단계에서 발급받은 토큰을 넣으면 된다.

따라서, 필자의 경우 test.Rmd파일을 블로그에 포스팅하고 싶을 경우 다음의 명령어를 실행하게 된다.

post2Tistory("test.Rmd", "issactoast", my_token)

자신의 블로그에 포스팅된 글을 확인하고, 관리자 페이지에서 원하는 카테고리로 분류해 주도록 하자. 카테고리 분류와 글 상태에 대한 기능은 지원하고 있지 않다. 이런 기능들은 차차 업데이트를 통하여 제공할 계획에 있다. 


(패키지 제작에 너무 많은 도움을 주신 Chan Yub Park(https://www.facebook.com/mrchypark?hc_location=ufi) 님께 무한한 감사를 표합니다.)



SHARE TO



티스토리 툴바