LoginSignup
5
5

More than 5 years have passed since last update.

RからQiitaに記事を投稿する

Posted at

(残念ながらこの記事はRから投稿したわけじゃないです)

dichikaさんに教えていただいたおかげでやり方なんとなく分かりました。

test.RmdというファイルをknitしてQiitaにアップするとすると、こんな感じ。ただし、APIからはファイルアップロードはできないので、今のところそこは手動でやる必要があります。

library(rmarkdown)
library(httr)
library(jsonlite)

rmd_file <- "test.Rmd"
md_file <- "test.md"

# markdownファイルを生成
render(input = rmd_file, output_file = md_file,
       output_format = md_document(variant = "markdown_github"), encoding = "UTF-8")

# markdownファイルを読み取り、JSONをつくる
body <- paste(readLines(md_file, encoding = "UTF-8"), collapse = "\n")
b <- toJSON(
  list(body = body,
       tags = list(
         list(name = "R")
         ),
       title = "RからQiitaに投稿するテスト"),
  auto_unbox = TRUE)

# 個人用アクセストークンを入力
qiita_token <- paste("Bearer", .rs.askForPassword("Enter token here:"))

# 投稿
res <- POST("https://qiita.com", path = "/api/v2/items",
            config = add_headers(`Content-Type`='application/json',
                                 `Authorization`=qiita_token),
            body = b)
# 確認
status_code(res)
> [1] 201

結果:http://qiita.com/yutannihilation/items/3b02596ed82b88760519

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5