LoginSignup
0
1

More than 3 years have passed since last update.

EvernoteAPIを使ってPythonでノートを作ってみる

Posted at

前回
Evernote デベロッパートークンを入手する。
でEvernoteのデベロッパートークンを入手したので、Spyderからノートブックとノートの作成をしようと思います。
この記事はThe Evernote SDK for Python Quick-start GuideのCommonTaskを参考に作成しています。

まずはSpyderを起動します。
過去にpython2.7の仮想環境を作成しているので、その環境下で作成します。

Spyderはanakonda prompt から conda activate py27と入力した後、Spyderと入力し、Spyderを起動してもいいですし、既にこの環境で起動したことがあればスタートメニューのanacondaのフォルダにSpyder(py27)というショートカットができているのでそこから立ち上げてもよいです。(便利ですね)

立ち上げたSpyderに以下のプログラムを打ち込んで保存します。

The Evernote SDK for python Quick-start Guideには以下の様な記述がありますが、これをこのまま打ち込んでもプログラムは動きません。

noteStore = client.get_note_store()
note = Types.Note()
note.title = "I'm a test note!"
note.content = '<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd">'
note.content += '<en-note>Hello, world!</en-note>'
note = noteStore.createNote(note)

まず、evernoteAPIを読み込みます。

# coding:utf-8
from evernote.api.client import EvernoteClient
import evernote.edam.type.ttypes as Types

次にEvernoteクライアントを呼び出します。

client = EvernoteClient(token='ここにデベロッパートークンを記載します')

ノートを設定します。

ここからThe Evernote SDK for python Quick-start Guideに記載されているプログラムを使います。

noteStore = client.get_note_store()
note = Types.Note()
note.title = "I'm a test note!"
note.content = '<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd">'
note.content += '<en-note>Hello, world!</en-note>'
note = noteStore.createNote(note)

以下の全てつなげたものを、Spyderを立ち上げ入力し、Evernote_New_note_create.pyという名前で保存します。

Evernote_New_note_create.py
# coding:utf-8
from evernote.api.client import EvernoteClient
import evernote.edam.type.ttypes as Types
client = EvernoteClient(token='ここにデベロッパートークンを記載します')
noteStore = client.get_note_store()
note = Types.Note()
note.title = "I'm a test note!"
note.content = '<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd">'
note.content += '<en-note>Hello, world!</en-note>'
note = noteStore.createNote(note)
print('note created')

Spyderで実行して、右下のコンソールにnotecreatedと表示されるとノートは作成されているはずです。

image.png

evernoteにログインして確認してみる

ここで、evernoteにログインしてノートが作成されたか確認してみようとしたが、自分のEvernoteアカウントと、開発用のアカウントのメールアドレスを同じにしてしまったので、開発用アカウントに入ることができなくなったが、以下の方法で入ることができた。

Developer Tokensのページを開く。

Sandboxをクリック
image.png

右上のノートに移動をクリック
image.png

すると、開発用のevernoteにログインできて、上記で作成した「I'm a test note!]という名前のノートが作成されており、「Hello,world」とノートの中に記載されているのがわかる。
image.png

0
1
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
0
1