はじめに
はてなブログではAPIを利用することで自動投稿/更新が可能です。
以下記事にてcurlコマンドを用いたブログの更新方法は説明したので
本記事では自動投稿について解説します。
はてなブログAPIの動作確認
詳細は以下の開発チームの記事にありますが
はてなブログAtomPub - Hatena Developer Center
自動投稿/更新はXMLデータの送付で行います。
curlコマンドとid/keyの動作検証も兼ねて
# curl -u {ブログID}:{AtomPubAPIキー} https://blog.hatena.ne.jp/{はてなID}/{ブログID}/atom/entry/
とターミナルで打ってみてください。
下書き含め、記事の情報がずらずらと標準出力から取得できます。
入力に必要なAtomPubAPIキーはSettingのAdvanced部分に記載されており、
はてなID等が含まれるURLもRoot endpointとして記載されています。
自動投稿ワンライナー
test.xmlを用意し、以下コマンドを投入します。
cat test.xml | curl -X POST -H "Content-type: text/xml" --data-binary @- -u {はてなID}:{AtomPubAPIキー} https://blog.hatena.ne.jp/{はてなID}/{ブログID}/atom/entry/
test.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></name></author> <content type="text/plain"> ブログ本文 </content> <category term="ブログカテゴリ" /> <app:control> <app:draft>no</app:draft> </app:control> </entry>
ちなみにURLは以下のSettingルールに従って投稿されます。
終わりに
Linuxコマンドに精通している方なら馴染み深いcurlコマンドでブログが投稿できるため、個人的には便利に利用しています。
同様のことに興味がある方がいれば参考になれば幸いです。