阅读笔记的二次生命:多看App笔记导入Anki的Python脚本

一、前言

作为一个读者,我每年都会读许多电子书,并且喜欢在书中划出精彩的句子。无论是“微信读书”APP还是"多看阅读"APP,它们都提供了便捷的划线保存功能。虽然这些标注可以导出至电脑,但我发现自己很少回头去查看它们。我之前在网上发现了一个将微信读书的书摘转换为Anki的CSV文件的工具,这让人很兴奋。然而,对于多看阅读,我没发现有类似的转换工具。我个人在“多看阅读”上积累了几千条的阅读笔记,如果能将这些笔记高效转换并导入到Anki中,将对我非常有帮助。我尝试过使用GPT-4-32K模型来转换,但经常会遇到小错误。因此,我决定用Python来编写一个小程序,并在此与大家分享。

二、操作流程

1、先从“多看阅读”导出笔记,类似如下格式

2、在桌面新建一个文件夹,然后文件夹中新建一个1.txt文件。把刚才笔记复制进去.

3、新建一个爬虫运行文件,把下面代码输入进去,保存格式.py.

import csv
import re

input_file = '1.txt'
output_csv_file = 'output.csv'

# 正则表达式,用于匹配日期
date_pattern = re.compile(r'^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}')
# 正则表达式,用于匹配仅包含一个单独标点符号的行
# 这里我们匹配任何单个标点符号,可以根据需要添加更多
single_punctuation_pattern = re.compile(r'^[\s]*[.,:;!?\'\"-][\s]*$')

# 读取文本文件,并去除日期行和前后行
with open(input_file, 'r', encoding='utf-8') as txt_file:
    lines = txt_file.readlines()

# 去除文件的前两行和最后两行
lines = lines[3:-4]

# 过滤掉空行、日期行和只包含单个标点符号的行
content_lines = [line.strip() for line in lines if line.strip() and 
                 not date_pattern.match(line.strip()) and
                 not single_punctuation_pattern.match(line.strip())]

# 写入CSV文件
with open(output_csv_file, 'w', newline='', encoding='utf-8') as csv_file:
    writer = csv.writer(csv_file)
    # 写入内容
    for line in content_lines:
        writer.writerow([line])

print(f"CSV file '{output_csv_file}' has been created.")

4、运行代码,查看结果。可以对生成csv适当修改后导入anki卡片。

三、总结

  我这里生成的csv文件并没有设置多字段,导入卡片可以使用Anki默认的正反面卡片模板。如果你机遇内p t容有其他想法可以写在卡片背诵。我这里的使用场景是将阅读笔记Anki卡片应用于碎片时间替代,有意识提升碎片时间看到信息的质量。我的目标不是利用Anki进行传统的记忆训练,而是作为一种提醒工具,用来回顾那些曾经启发我思考的摘录和文字。我相信,通过查看这些来自不同书籍的深刻内容,我能够在这些零碎时间里获得新的洞见和创意。为了使卡片浏览更加自动化,建议用户启用文本到语音(TTS)功能,并配置卡片内容的自动播放选项。这样的设置将更好的提升学习体验。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值