整理kindle的標註 —— python(My Clippings.txt 文件,運行代碼)

免費試用 Kindle unlimited 電子書包月服務 30天,試用入口:https://amzn.to/341Dqhf

免費試聽 Amazon Audible 有聲書 30天。試聽申請入口:https://amzn.to/39CBmNR

kindle用久了,想在裡面找到原來標註的文字就非常的困難,世界讀書日,分享下幾年前剛買kindle時候編寫的整理標註的代碼,希望能對大家有用。

找到 kindle 裡面的 My Clippings.txt 文件,運行代碼

# -*- coding: utf-8 -*-
# ——– kindle to markdown—————–#
# ——– 生成每一本书的所有标记内容———–#
# ——– 按每本书名生成文件——————#

import os
# 1 read the file
path = ‘C:\\zywork\\book_zy\\My Clippings.txt’
f = open(path, ‘r+’, encoding=’utf-8′)
booknote = f.readlines()
f.close()
# 设置处理后的文件存储路径
write_path = ‘C:\\zywork\\kindle_new\\’
# 2 获取每一条记录的信息
name = [] # book name
pos_time = [] # position and time
content = [] # note content
len(booknote) # 每一条标记分为5行
for i in range(0, int(len(booknote) / 5)):
name.append(booknote[i * 5])
pos_time.append(booknote[i * 5 + 1])
content.append(booknote[i * 5 + 3])
setname = set(name) # 获取书名 从读取的所有书名中提取出书名
setname = list(setname)
setname.sort()

# 获取每一本书书名在[name list]中的所有索引号,存与note_dict中(字典类型)
note_dict = {}

def list_index(x, y):
return [a for a in range(len(y)) if y[a] == x]

for n in range(len(setname)):
note_dict[setname[n]] = list_index(setname[n], name)
# note_dict = [书名:list[]]

content_list = 0 # 每本书记录内容序号
for key, val in note_dict.items():
key = key[0:-1] # 消除书名中的‘\n’
key = key.replace(‘?’, ”) # 消除书名中的‘?’
key = key.replace(‘:’, ‘-‘) # 消除书名中的‘;’
booknote_new = open(write_path + key + ‘.md’, ‘w’, encoding=’utf-8′)
booknote_new.write(“# ” + key + ‘\n’) # 书名
for i in val:
content_list = content_list + 1
booknote_new.write(“* ” + str(content_list) + ‘:’ + content[i])
content_list = 0
booknote_new.close()

整理後一本書的 .md文件

寫在最後,注:免費試用Kindle unlimited 30天 及免費試聽Amazon Audible 30天 ,可隨時取消!百萬書籍暢讀!

本文標題:《整理kindle的標註 —— python(My Clippings.txt 文件,運行代碼)》,本文鏈接:http://www.yunjialebuy.com/archives/2829.html

還有人不知道嗎?通過Topcashback返利網再到Marriott官網預訂酒店並完成合格入住,可以獲得高達5%現金返利。
也許是IHG聽到大家的呼喚了,所以又開始加贈100%(等同於5折)賣分了,還是熟悉的配方和味道,購買7,000分以上即可享受加贈100%,促銷有效期到2020年6月15日。

Hilton 希爾頓史低買分活動再現,1萬分起就可以享受100%額外贈送!有需要的小夥伴請抓緊時間購買,截止到2020年5月27日!

Marriott 萬豪新一輪史低價賣分:2020.5.18~6.30,單筆購買2,000分及以上,可獲得60%積分額外贈送,單筆最多可購買5萬分,每戶每年最多可購買10萬分;如果今年沒買過分,即買分最高可獲6萬分贈送。

Hyatt 凱悅酒店集團推出 2020 年第 3 次 World of Hyatt 凱悅天地賣分促銷活動,通過官網購買積分可享額外 30% 獎勵。促銷時間:截止至 2020-7-29。