写了个 Evernote To IPFS 印象笔记导出到 IPFS,便于分享保存剪藏的网页 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cy97cool
V2EX    IPFS

写了个 Evernote To IPFS 印象笔记导出到 IPFS,便于分享保存剪藏的网页

  •  3
     
  •   cy97cool 2017-11-14 17:08:48 +08:00 6061 次点击
    这是一个创建于 2961 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Evernote To IPFS 印象笔记导出到 IPFS

    Author: zjuchenyuan

    使用情景 - 让互联网拥有记忆

    遇到喜欢的 /可能被删的网页,使用印象笔记的剪藏功能存到印象笔记后

    导出到 IPFS,只需要发送一个 cid,便于网络上其他人 pin,最终使得永久保存网页

    替代方案:使用 web.archive.org ,但其遵循 robots.txt ,且不能保存需要登录才能看 和 js 动态渲染的内容

    前置要求

    1. 印象笔记 API token:但现在印象笔记和 Evernote 都关闭了新用户申请,你可能需要发多次工单以请求开放此功能
    2. IPFS: 本程序会调用子进程 ipfs add,所以你需要正在运行 ipfs daemon,并把 ipfs 加入到 PATH
    3. 本代码需要 python3 并 安装 evernote-sdk-python3:注意 pip 安装获取的代码版本不支持印象笔记,需要使用 git clone 得到最新的代码

    以下安装方法供参考:

    pip3 install evernote3 -i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com pip3 uninstall -y evernote3 git clone --depth 1 https://github.com/evernote/evernote-sdk-python3 cd evernote-sdk-python3 python3 setup.py install 

    直接运行

    git clone --depth 1 https://github.com/zjuchenyuan/evernote2ipfs cd evernote2ipfs # add your auth_token to config.py, example: # auth_token = "S=s28:U..." python3 run.py 

    请在 config.py 中给出你的 auth_token,此 token 在这里获取

    然后直接运行本代码 python3 run.py,将列出最新的 10 条笔记名称

    输入你想导出的笔记 id

    等待笔记下载(缓存将写入__pycache__文件夹) 和 笔记处理(en-media 转为 img 标签)

    最后将输出 ipfs 的 id

    例子

    https://ipfs.io/ipfs/QmZX2zUkvEhRMK1GW1ZfKYWa2D7zdRA5FTgDya1G8mjLGg

    一点讨论

    安全性讨论

    注意保密你的 auth_token,其地位与你的印象笔记密码相同,如果泄露需要及时 Revoke

    ipfs 不会主动推送你的文件到其他节点,本代码执行后全球网络应该只会有一份(你的电脑上)

    如果你访问了ipfs.io/ipfs/...或其他公共 gateway 的链接,gateway 将从你的电脑上下载对应文件,并缓存一段时间

    建议先访问127.0.0.1:8080/ipfs/...的链接,确认没有隐私泄露可以分享后再访问公共 gateway

    ipfs 数据持久性讨论

    ipfs 网络是会丢数据的! 整个网络中没有任何节点 pin、且公共 gateway 缓存过期后,数据就丢失了

    你可能需要 ipfs pinning service,如eternum.io

    或者购买 vps,自己手动 pin 你需要保留的资源

    欢迎贡献

    感谢你的阅读和关注~ 不如给个 Star 吧~

    github 地址: https://github.com/zjuchenyuan/evernote2ipfs

    这里有另一篇我的关于 ipfs 的思考: t/405767

    5 条回复    2018-02-18 14:17:24 +08:00
    findex
        1
    findex  
       2017-11-14 18:21:38 +08:00
    感谢分享。自从上次 evernote 5000w 用户信息泄露发生,已经很让人担忧其数据安全了。
    notgood
        2
    notgood  
       2017-12-03 21:57:55 +08:00 via iPhone
    谢谢大佬!另请问为什么 evernote 剪藏不了 coding WEB IDE 页面上的代码?保存的我一看全是空白的
    cy97cool
        3
    cy97cool  
    OP
       2017-12-03 22:06:11 +08:00
    @notgood 印象笔记剪藏 本身就不完美
    方法 1:找客户支持
    方法 2:自己改扩展的 js
    notgood
        4
    notgood  
       2017-12-03 23:18:04 +08:00 via iPhone
    @cy97cool 谢谢你。确实有点坑
    Rorysky
    5
    Rorysky  
       2018-02-18 14:17:24 +08:00
    总觉得 一味地 区中心化 这条路 不太对……
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5063 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 09:08 PVG 17:08 LAX 01:08 JFK 04:08
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86