kindle我的剪帖文件整理脚本


  "标注"是kindle很好用的一个功能。阅读时只管标注,一段时间也读了不少的书,当我想要将所有的标注移植入印象笔记的时候,发现这个文件里的内容已经变得很多,且各个书标记的内容互相穿插,需要一点一点搬运过去,这实在是太麻烦了。
  将kindle中的My Clippings.txt文件复制到电脑上,打开后是这个样子的。非常的杂乱无章,我肯定想将月亮和六便士的标注放在一起,而如果我在这本书中标注了100句话,那我就要进行100次的复制粘贴操作,才能将它们汇聚到印象笔记中。这是无法承受的工作量,需要写个脚本,一键模式完成整理。
  这里写图片描述
  根据python字典的可变性,将书名都提取出来作为key,同一本书的内容作为字符串依次相加,作为最终的值,再依次列出,写入新文件,便可达到目的。
  代码在这里,使用了defaultdict,用于初始化字典的value:

# -*- coding:utf-8 -*-
from collections import defaultdict

shinewords = open('cli.txt','r').read().decode('utf-8')
section = shinewords.strip().split("==========\r\n")
books = defaultdict(lambda : "")
for i in section:
    try:
        i = i.split('\n')
        books[i[0]] += i[3]+'\n\n'
    #最后一个分割为文档结束符,它并没有前面全部正常
    except IndexError:
        pass

with open('note.txt','wb') as f:
    for i in books:
        f.write(i.encode('utf-8') + '\n\n' + books[i].encode('utf-8') + '==========\n')
f.close()

  
  运行之后,生成了新的txt文件,效果如图,感觉甚是清爽。
  这里写图片描述
  

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值