All Projects → kingname → EverFlowy

kingname / EverFlowy

Licence: MIT license
Sync your workflowy's items into evernote

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to EverFlowy

Enex Dump
Dump the content of .enex files, preserving attachements, some metadata and optionally converting notes to Markdown.
Stars: ✭ 73 (+135.48%)
Mutual labels:  evernote
Yarle
Yarle - The ultimate converter of Evernote notes to Markdown
Stars: ✭ 170 (+448.39%)
Mutual labels:  evernote
marknotes
📝 You’re taking a lot of notes and need a solution to manage them i.e. put your knowledge base in one central place and being able to retrieve quickly information’s, display them nicely through the browser as a HTML page or a slideshow, export them in many file formats (docx, odt, pdf, txt, …). Sensitive information’s can be encrypted and notes …
Stars: ✭ 73 (+135.48%)
Mutual labels:  evernote
Yi Note
YiNote browser extension - online video note taking tool
Stars: ✭ 96 (+209.68%)
Mutual labels:  evernote
Enwrite
Evernote-powered statically-generated blogs and websites
Stars: ✭ 139 (+348.39%)
Mutual labels:  evernote
Evernote2md
Convert Evernote .enex files to Markdown
Stars: ✭ 193 (+522.58%)
Mutual labels:  evernote
Ever2boost
Stars: ✭ 65 (+109.68%)
Mutual labels:  evernote
evernote-to-sqlite
Tools for converting Evernote content to SQLite
Stars: ✭ 28 (-9.68%)
Mutual labels:  evernote
Android Classic
Android app - (Deprecated) - New version: https://github.com/standardnotes/mobile
Stars: ✭ 145 (+367.74%)
Mutual labels:  evernote
quentier
Cross-platform desktop Evernote client
Stars: ✭ 115 (+270.97%)
Mutual labels:  evernote
Evernote Alfred
使用 Alfred 快速搜索印象笔记中的内容
Stars: ✭ 116 (+274.19%)
Mutual labels:  evernote
Everorg
Evernote to Org mode migration tool
Stars: ✭ 130 (+319.35%)
Mutual labels:  evernote
Web
A free, open-source, and completely encrypted notes app. https://standardnotes.com
Stars: ✭ 3,061 (+9774.19%)
Mutual labels:  evernote
Markdownxiaoshujiang
markdownxiaoshujiang
Stars: ✭ 1,188 (+3732.26%)
Mutual labels:  evernote
enml2md
Evernote to Markdown Converter
Stars: ✭ 36 (+16.13%)
Mutual labels:  evernote
Evermark
🐘 A command line tool for syncing markdown notes to Evernote
Stars: ✭ 72 (+132.26%)
Mutual labels:  evernote
Omni Notes
Open source note-taking application for Android
Stars: ✭ 2,343 (+7458.06%)
Mutual labels:  evernote
evernote-backup
Backup & export all Evernote notes and notebooks
Stars: ✭ 104 (+235.48%)
Mutual labels:  evernote
nixnote2
Nixnote - Evernote desktop client for Linux
Stars: ✭ 281 (+806.45%)
Mutual labels:  evernote
Lsyevernote
Stars: ✭ 248 (+700%)
Mutual labels:  evernote

从Workflowy到印象笔记

Workflowy是一个极简风格的大纲写作工具,使用它提供的无限层级缩进和各种快捷键,可以非常方便的理清思路,写出一个好看而实用的大纲。如下图所示。

印象笔记更是家喻户晓,无人不知的跨平台笔记应用。虽然有很多竞争产品在和印象笔记争抢市场,但是印象笔记强大的搜索功能还是牢牢抓住了不少用户。

如果能够把用Workflowy写大纲的便利性,与印象笔记强大的搜索功能结合起来,那岂不是如虎添翼?如下图所示。

EverFlowy就是这样一个小工具。它可以自动把Workflowy上面的条目拉下来再同步到印象笔记中。如果Workflowy有更新,再运行一下这个小工具,它就会同步更新印象笔记上面的内容。Workflowy负责写,印象笔记负责存,各尽其能,各得其所。

工具介绍

Everflowy基于Python 3开发,代码托管在Github中,地址为:https://github.com/kingname/EverFlowy这个小工具在持续开发中,目前可以实现Workflowy单向同步到印象笔记和差异更新。由于印象笔记的Oauth验证方式需要申请才能对正式的账号使用,但它又不会通过这种个人小工具的申请,所以目前暂时使用开发者Token。关于如何申请开通正式账号的开发者Token,在后文会有详细的说明。

安装

首先需要保证电脑中安装了Python 3,否则无法运行这个小工具。代码的依赖关系使用Pipenv来管理,所以需要首先使用pip安装pipenv:

python3 -m pip install pipenv

有了Pipenv以后,使用Git把代码拉到本地再安装依赖:

git clone https://github.com/kingname/EverFlowy.git
cd EverFlowy
pipenv install
pipenv shell

运行了上面的4条命令以后,你的终端窗口应该如下图类似。

Pipenv会自动创建一个基于Virtualenv的虚拟环境,然后把EverFlowy依赖的第三方库自动安装到这个虚拟环境中,再自动激活这个虚拟环境。

配置

在代码的根目录,有一个config.json文件,打开以后如下图所示。

你需要修改三个地方,分别是usernamepassworddev_token。其中usernamepassword分别对应了Workflowy的用户名和密码,而dev_token是印象笔记的开发者Token。

这里需要说明一下印象笔记的开发者Token。印象笔记的开发者Token有两套,分别是沙盒环境的开发者Token和生产环境的开发者Token。所谓沙盒环境,就是一个测试开发环境,这个环境是专门为了快速开发印象笔记App而设计的,它的地址为:https://sandbox.evernote.com。打开这个网址,可以看到页面上弹出了警告,如下图所示。

无论你之前是否有印象笔记的账号,要使用沙盒环境,都必需重新注册。注册完成以后,通过访问https://sandbox.evernote.com/api/DeveloperToken.action获取沙盒环境的开发者Token。

关于印象笔记的沙盒环境,我将另外开一篇文章来说明。本文主要介绍如何申请生产环境的开发者Token,从而可以使用正式的印象笔记账号。

在2017年6月以后,印象笔记关闭了生产环境开发者Token的申请通道,如果打开申请网址:https://app.yinxiang.com/api/DeveloperToken.action,你会发现申请的按钮是灰色的且无法点击。要解决这个问题,就需要让印象笔记的客服帮忙。

登录自己的印象笔记正式账号,打开印象笔记首页,把页面拉到最下面,可以看到有一个“联系我们”,如下图所示。

进入“联系我们”,点击“联系客服”,如下图所示。

在联系客服的页面填写如下信息,最后一项“简要描述问题”填写“我需要基于印象笔记API开发,请帮我开通生产环境开发者Token”并提交。

大约24小时内,就可以受到客服回复的邮件,如下图所示。

此时再次打开https://app.yinxiang.com/api/DeveloperToken.action就可以申请开发者Token了,如下图所示。

需要注意的是,开发者Token只会显示一次,所以你需要立刻把它记录下来。

运行

有了生产环境的开发者Token以后,把它填写到config.json中,配置就算完成了。在终端输入命令:

python3 EverFlowy.py

程序就可以开始同步Workflowy的数据到印象笔记了。

同步完成以后,你会发现程序的根目录出现了一个history.db文件。这是一个sqllite的文件,里面就是你在Workflowy中的所有大纲内容和对应的印象笔记GUID和enml格式的内容。这是为了实现数据的差异更新而生成的。你可以使用各种能够浏览sqllite的工具来查看里面的内容。

已知问题

  • 如果删除了history.db,那么再次运行Everflowy,Workflowy中的所有内容都会再次写入印象笔记。
  • 如果单独删除了EverFlowy写入印象笔记中的某一条目,却不删除history.db中的对应条目,WorkFlowy会因为找不到GUID而抛出异常。
  • 没有测试国际版印象笔记账号是否可用。
  • 如过你想测试沙盒环境的开发者账号,请修改evernote_util/EverNoteUtil.py第98行,把
client = EvernoteClient(token=self.dev_token, sandbox=False, service_host='app.yinxiang.com')

修改为:

client = EvernoteClient(token=self.dev_token)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].