V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
jarodise
V2EX  ›  Python

一个编程小白关于微信读书的程序构想

  •  
  •   jarodise · 2022-07-14 02:51:30 +08:00 · 4512 次点击
    这是一个创建于 870 天前的主题,其中的信息可能已经有所发展或是发生改变。

    学了一周的 Python ,刚刚学到了一点皮毛,目前的水平仅能徒手写出来个人机对战的剪刀石头布的小游戏。

    不过远景目标也是有的,就是想写一个以生成时间为过滤条件的微信读书笔记导出工具,目前市面上还看没看到能实现类似功能的程序。

    要实现这个目标大概需要以下几个步骤:

    1. 通过微信读书 API 抓取读书笔记到本地数据库。

    2. 通过判断笔记 /高亮划线生成的时间戳,过滤出自『上次导入时间』-『当前时间』这一时间段的所有笔记 /高亮划线内容。

    3. 将过滤出的所有笔记逐条打上『#YYYY-MM-DD 』格式的日期 tag 和『#书名』 tag ,外加 1-2 个自定义 tag ,例如『#inbox 』。

    4. 将输出的笔记写入到一个名为 WR_YYYYMMDDmmss(本次导入时间).md 的文件中,并自动将这个文件存入 Logseq 的 pages 文件夹下面。

    它的目标用户群应该主要是,以微信读书为主要阅读器,喜欢同时阅读多本书,有回顾 /深度处理读书笔记的刚需,并且主力使用 Logseq/Roam/Obsidian 等双链笔记工具进行个人知识管理的人群。

    名字我也起好了,就叫『微信读书时间胶囊』。

    18 条回复    2022-07-14 18:03:13 +08:00
    jadec0der
        1
    jadec0der  
       2022-07-14 05:39:59 +08:00
    https://www.v2ex.com/t/605447

    《 Python 从入门到入狱》
    ql562482472
        2
    ql562482472  
       2022-07-14 06:39:16 +08:00
    国内合规的公共服务极少有提供 API 的吧,微信读书看官网也没有 API
    singerll
        3
    singerll  
       2022-07-14 07:07:01 +08:00 via Android   ❤️ 1
    这个程序只能中午写。
    0o0O0o0O0o
        4
    0o0O0o0O0o  
       2022-07-14 07:13:30 +08:00 via iPhone
    1 、没有 API ,你需要先学逆向,如果网页版有足够你使用的数据,那你只需要从网页上抓取,否则要逆向 app 。

    2 、不必想什么用户群体,自己用还可以,传播违法。
    K1W1
        5
    K1W1  
       2022-07-14 07:40:37 +08:00 via Android   ❤️ 3
    @singerll 早晚会出事么
    ncepuzs
        6
    ncepuzs  
       2022-07-14 08:12:23 +08:00   ❤️ 2
    一个定律:当你想出一个 idea 的时候,可能已经有人把它做出来了。

    https://github.com/zhaohongxuan/obsidian-weread-plugin

    另外,仅按导出时间来分割一篇完整的读书记录,我觉得没有意义。
    Dwsy
        7
    Dwsy  
       2022-07-14 10:10:30 +08:00 via Android
    Chrome 插件有类似的。
    jarodise
        8
    jarodise  
    OP
       2022-07-14 12:02:26 +08:00
    @ncepuzs
    第一,这个插件我昨天折腾了一天,跟我想要的并不一样,我甚至在 Gitbhub 上给作者提了 PR 。

    第二,你根本没有理解我的 use case 和痛点在哪,所以觉得没有意义也很正常。
    jarodise
        9
    jarodise  
    OP
       2022-07-14 12:03:12 +08:00
    @Dwsy Chrome 只有能以书名为分类导出笔记的,以生成时间为分类导出的目前没有看到。
    jarodise
        10
    jarodise  
    OP
       2022-07-14 12:03:29 +08:00
    @singerll 这是什么梗?
    jarodise
        11
    jarodise  
    OP
       2022-07-14 12:04:28 +08:00
    @ql562482472 Github 上搜到几个现成的项目,但是如何在它们的基础上孤岛出我要的效果估计还需要折腾一翻。
    Seaony
        12
    Seaony  
       2022-07-14 12:10:18 +08:00
    @jarodise 因为早晚要出事
    RockShake
        13
    RockShake  
       2022-07-14 13:34:40 +08:00
    直接复用上面那个接口就行了,自己用问题不大,而且也不用纠结使用什么语言实现
    sunhelter
        14
    sunhelter  
       2022-07-14 13:47:17 +08:00
    国内的应用一般都不提供外部 Api ,用爬虫那保不定哪天就进去了
    cz5424
        15
    cz5424  
       2022-07-14 13:56:43 +08:00 via iPhone
    我看刑
    lovedebug
        16
    lovedebug  
       2022-07-14 13:58:30 +08:00
    浏览器上就可以打开微信读书,已经有不少插件和油猴脚本支持了
    ajump
        17
    ajump  
       2022-07-14 14:04:14 +08:00 via Android
    到时候就是养肥了再宰
    ncepuzs
        18
    ncepuzs  
       2022-07-14 18:03:13 +08:00
    @jarodise

    首先,你那叫 issue 不叫 pr

    其次,单从上面描述的确看不出你要将 daily notes 作为信息入口,而这我觉得可能恰好是 logseq 和 obsidian 用户最大的区别
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2634 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 15:22 · PVG 23:22 · LAX 07:22 · JFK 10:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.