小技チョコレート

ちょっとした小技を紹介するだけのブログです。

コマンドプロンプトからDynalistのInboxへ記入するPythonスクリプト

コマンドプロンプトに入力したテキストをDynalistのInboxへ記入するPythonスクリプトを作ったので、使い方を書いておきます。


〈目次〉


機能

必要なもの

Pythonを実行できる必要があります。

複数項目を記入できるタイプ

設定の手順

Dynalistにログインしたうえで、Developer - Dynalistをウェブブラウザで開き、“Your API secret token is: ”の下に表示されている長い文字列をコピーします(下記の画像でボカしている部分です)。*2

f:id:ichbin:20190804143052p:plain

テキストエディタで新しいファイルを作り、下記のコードを記入します。

import sys
import json
import requests

lines = sys.stdin.readlines()

for i, line in enumerate(reversed(lines)):
    line = line.strip("\n")
    dict={'token':'YOUR_SECRET_TOKEN',
    'index':'0',
    'content':line
    }
    response = requests.post('https://dynalist.io/api/v1/inbox/add', json.dumps(dict), headers={'Content-Type': 'application/json'})
    print (response.text)

9行目のYOUR_SECRET_TOKENのところに、上述のコピーした長い文字列をペーストします。

10行目のindexの値はデフォルトで0としていますが、ここには0または-1を入力できます。
0にすると、Terminalに入力したテキストはInboxの先頭の行に記入されます。-1にすると、Inboxの末尾の行に記入されます。
ここでの位置指定は、Dynalistの設定画面での位置指定よりも優先します。

記入し終えたら、このファイルを適当なフォルダに保存します。ファイル名はdynalist.pyのように拡張子を.pyとします。

使い方

Terminalで、上掲のdynalist.pyを保存したフォルダに移動し、python dynalist.pyと実行。

f:id:ichbin:20190804143320p:plain

下の行にカーソルが移るので、Dynalistに記入したい内容を入力します。Enterキーを押すと次の行に移ります。

f:id:ichbin:20190804194532p:plain

最後の行(この例では3行目)に入力し終わったら、改行してからControl+dのキーを押します。Dynalistへの記入が行われます。

Dynalistへの記入が正しく行われれば、{"_code":"Ok","node_id":"**********","index":0}というメッセージが、行数と同じ回数表示されます。これで完了です。

f:id:ichbin:20190804194942p:plain

Dynalistを開くと、このように記入されています。

f:id:ichbin:20190804194652p:plain

1項目(1行)のみ記入できるタイプ

設定の手順

Dynalistにログインしたうえで、Developer - Dynalistをウェブブラウザで開き、“Your API secret token is: ”の下に表示されている長い文字列をコピーします(下記の画像でボカしている部分です)。*3

f:id:ichbin:20190804143052p:plain

テキストエディタで新しいファイルを作り、下記のコードを記入します。

import json
import requests

content=input('>>')
 
dict = {
    'token'  :  'YOUR_SCERET_TOKEN',
    'index'  :  '0',
    'content'  :  content
}

response = requests.post('https://dynalist.io/api/v1/inbox/add', json.dumps(dict), headers={'Content-Type': 'application/json'})

print (response.text)

7行目のYOUR_SECRET_TOKENのところに、上述のコピーした長い文字列をペーストします。

8行目のindexの値はデフォルトで0としていますが、ここには0または-1を入力できます。
0にすると、Terminalに入力したテキストはInboxの先頭の行に記入されます。-1にすると、Inboxの末尾の行に記入されます。
ここでの位置指定は、Dynalistの設定画面での位置指定よりも優先します。

記入し終えたら、このファイルを適当なフォルダに保存します。ファイル名はdynalist.pyのように拡張子を.pyとします。

使い方

Terminalで、上掲のdynalist.pyを保存したフォルダに移動し、python dynalist.pyと実行。

f:id:ichbin:20190804143320p:plain

下の行に>>という記号が表示されるので、そこに続けて、Dynalistに記入したい内容を入力し、Enterキーを押します。

f:id:ichbin:20190804143346p:plain

Dynalistへの記入が正しく行われれば、{"_code":"Ok","node_id":"**********","index":0}というメッセージが表示されます。これで完了です。

f:id:ichbin:20190804143401p:plain

Dynalistを開くと、このように記入されています。

f:id:ichbin:20190804143415p:plain

GUIバージョン

別記事にGUIバージョンもあります。

Tips

Dynalistに記入をしようとするたびにpython dynalist.pyというコマンドをタイピングするのは煩わしいので、このコマンドにエイリアスを設定するなどして短くするとよいと思います。

資料

上掲のスクリプトは、こちらに示されている仕様に従って作りました。

*1:Inboxの位置を決める方法についてはこちらをご参照ください。

*2:この文字列を、他人が読める状態にしてはいけません。

*3:この文字列を、他人が読める状態にしてはいけません。