lisz-works

プログラミングと興味を貴方に

はてなブログAPIで投稿する!Talend API Testerで試す!

【スポンサーリンク】

lisz-works

「毎回ブログの画面開いてコピペめんどい」

ということで、はてなブログAPIで投稿する方法を試してみました!

とはいえまだ実用化という訳ではなく……

今回はGoogle Chromeの拡張で、API実行を試せる「Talend API Tester」を使って試してみました!

できること

これらのことができることを確認しました。

  1. ブログ記事の投稿(タイトル設定含む)
  2. 投稿日時の設定
  3. カテゴリの設定(複数可)
  4. 投稿/下書きの選択

できないこと

残念ながら、これらはできませんでした。

  1. アイキャッチの設定方法
  2. カスタムURL
  3. 記事の概要
  4. 高度なタイトル設定
  5. 予約投稿

もし「こうすればできるよ!」というものをご存知できたら、教えていただきたいです……

必要なもの

ダッシュボードから「設定→詳細設定」

設定→詳細設定

下にスクロールしていき、「AtomPub」の欄まで行きます。

AtomPubの項目

ここにある

  1. ルートエンドポイント
  2. APIキー

が必要となってきます。

試しに投稿する

「Talend API Tester - Free Edition」で試す。

chrome.google.com

入力項目

Talend API Testerでの入力項目はこちら。

画像と表の番号が対応しているので、合わせてご覧ください。

入力項目

No 項目 内容
1 METHOD POST
2 SCHEME ルートエンドポイント+"/entry"
3 HEADERS(左枠) Content-Type
4 HEADERS(右枠) application/xml
5 BODY XML(ブログ内容など)

HEADERSは入力項目がなければ、「Add headerボタン」で追加することができます。

POSTするXMLのサンプル

今回こんなXMLを使いました。

<?xml version="1.0" encoding="utf-8"?>
<entry xmlns="http://www.w3.org/2005/Atom"
       xmlns:app="http://www.w3.org/2007/app">
  <title>タイトル</title>
  <author><name>lis</name></author>
  <content type="text/x-markdown">
# 見出し1
本文
  </content>
  <updated>2019-10-16T11:30:00</updated>
  <category term="autoUpload" />
  <app:control> 
    <app:draft>no</app:draft>
  </app:control>
</entry>

送信

初めて送信するとき、「Sendボタン」を押した後

  1. ユーザ名
  2. パスワード

を聞かれます。

ここで入力するのは

項目 入力値
ユーザ名 はてなのユーザ名
パスワード 「必要なもの」で取得したAPIキー

です。

パスワードが、はてなのパスワードではないので、注意しましょう。

アプリとAPIとの使うものの関係で、言い回しが違っているせいですね。

投稿した結果

実行したらこんな感じで投稿されました。

追加された記事(一覧)

追加された記事(記事)

意図したとおりにはなっているものの、未来に投稿された記事となっています。

このように未来を指定しても、ブログ自体には反映されてしまいます。

なので予約投稿になるということはありません

注意しましょう。

本文はインデントのスペースに注意

本文にあたるcontent内は、インデントのスペースに注意が必要です。

スペースを入れることで「先頭にスペースがある文」と認識されてしまいます。

「いや当たり前だろ(笑)」

と思うかもしれませんが、これによってMarkdownがMarkdownとして認識されなくなります。

例えば

  # 見出し

と書いてしまうと、書式である「#」が認識されず「 # 見出し」という文になってしまいます。

複数カテゴリの設定

カテゴリはこの要素で設定しています。

  <category term="category1" />

これを複数書くことで、複数カテゴリが設定できます。

  <category term="category1" />
  <category term="category2" />

参考

コチラを参考にしました。ありがとうございました!

developer.hatena.ne.jp

www.virtual-surfer.com

あとがき

はてなブログAPIで投稿するを、Talend API Testerで試す!でした!

今後これを発展させて

「記事作成→投稿をして、あとはちょっと設定するだけ」

というようにできればと目論んでいます……

少しでも楽したい……

みなさんも良ければ試してみてください!