V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
Meekdai
V2EX  ›  分享创造

Gmeek 超轻量级个人博客框架 开源

  •  1
     
  •   Meekdai · 2023-08-02 09:51:52 +08:00 · 3549 次点击
    这是一个创建于 471 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一个博客框架,超轻量级个人博客模板。完全基于Github PagesGithub IssuesGithub Actions。不需要本地部署,从搭建到写作,只需要几分钟的时间,3 步搭建好博客,第 4 步就是写作。

    之前购买阿里云 3 年的活动 ECS 主机到期了,续费价格超级贵😭,所以打算在 github page 上面搭建自己的博客。看了很多不同类型的,例如HexoHugo这些比较有名的,也了解了很多在 github 上的小项目,发现了gitblog,这个博客是用 python 抓取 github issues 的内容然后展示在首页readme.md,当即就来了灵感👏,我可以自己通过 Python 抓取 github issues 的内容,生成静态页面,不仅仅包含首页,文章页面也可以生成后存储在 github 上,而且也可以通过 github Action 来自动执行 Python 文件,完全不需要任何的本地部署和操作。

    目前需要改进的地方还有很多,慢慢完善吧。

    第 1 条附言  ·  2023-08-02 10:35:11 +08:00

    忘记添加GIthub开源地址了->Gmeek

    https://github.com/Meekdai/Gmeek

    27 条回复    2024-03-14 10:19:13 +08:00
    kphcdr
        1
    kphcdr  
       2023-08-02 10:23:28 +08:00
    我记得以前有个项目,用邮件存储 blog
    stevenshum
        2
    stevenshum  
       2023-08-02 10:37:30 +08:00
    这个不错,star 了,但是搜索需要互联网收录。。。
    Meekdai
        3
    Meekdai  
    OP
       2023-08-02 10:43:42 +08:00
    @stevenshum 谢谢。是的搜索框只是调用了 google 的 site: 来搜索,主打就是一个轻量化,没有集成内置的搜索框。后面如果有好的方案也会集成内置的搜索框。
    amorphobia
        4
    amorphobia  
       2023-08-02 10:51:26 +08:00
    如果要导入以前的文章,如何设置发布时间呢?
    shuxhan
        5
    shuxhan  
       2023-08-02 10:57:50 +08:00
    项目不错,可惜没法导入旧文章,只能重新写
    Meekdai
        6
    Meekdai  
    OP
       2023-08-02 10:58:27 +08:00
    @amorphobia
    如需上传旧博客的文章需要修改发布时间,可以在文章最后一行添加如下代码。
    `[comment]: # (##{"timestamp":1451096020}##)`
    里面的时间是采用时间戳的形式,可以用如下[网站]( https://tool.lu/timestamp)转换。
    amorphobia
        7
    amorphobia  
       2023-08-02 11:08:10 +08:00
    @Meekdai 不好意思,是加在 issue 末尾吗?但我在你的 post 里没有找到这个代码,比如这篇: https://github.com/Meekdai/meekdai.github.io/issues/17 但这篇的发布时间是 2017 年

    感谢
    Meekdai
        8
    Meekdai  
    OP
       2023-08-02 11:12:18 +08:00
    @amorphobia
    [comment]: # (##{"timestamp":1451096020}##)
    你可以研究一下,这一段代码 markdown 是不会渲染出来的,我的很多文章也是最近添加才导入进去的,就是因为在 Issue 的最后一行添加了这一段代码来重定义文章的发布日期。

    @shuxhan
    目前是没办法批量导入的,但是可以写个小脚本,把 markdown 文件批量导入到 issue 应该不会太难。
    enuenena
        9
    enuenena  
       2023-08-02 15:31:27 +08:00
    这个不错,收藏了
    yidadaa
        10
    yidadaa  
       2023-08-02 15:41:48 +08:00
    Meekdai
        11
    Meekdai  
    OP
       2023-08-02 17:54:28 +08:00
    @yidadaa 专业~ 我想问一下,你的那个展示图片是怎么做的啊?自己用 PS 吗?
    stevenshum
        12
    stevenshum  
       2023-08-03 09:57:15 +08:00
    @yidadaa 你这个好像没法搜索?
    luwang
        13
    luwang  
       2023-08-03 10:50:12 +08:00
    我的也用的 GitHub Issue 的,但是是直接调用的 GitHub API

    项目地址: https://github.com/wallleap/ethereal
    yidadaa
        14
    yidadaa  
       2023-08-03 11:12:19 +08:00
    @stevenshum #12 可以搜啊,右上角不就是搜索框
    forty
        15
    forty  
       2023-08-03 20:03:17 +08:00
    抓取 github issues 是通过 api 抓取还是直接爬页面 ?

    个人觉得, 在 issues 里面写正文挺别扭的, 还是直接在仓库里写正文比较好(也方便保留更新记录), 可以仅把评论放到 issues 嘛.

    不过你这个博客, 简洁又好看.
    Meekdai
        16
    Meekdai  
    OP
       2023-08-04 09:03:49 +08:00
    @forty
    抓取 github issues 是通过 api 抓取的。
    目前会自动抓取 issues 文章渲染成 html ,同时会有一个备份保存在仓库的 backup 文件夹内。如果需求是在仓库内写正文,那直接把抓取 issues 的代码删除,替换成读取仓库内的文件就行,很简单。
    forty
        17
    forty  
       2023-08-17 10:30:48 +08:00
    @Meekdai 瞅了瞅代码, 没太看懂, 只要改这行吗? 感觉要再写一大堆代码.
    self.blogBase["postListJson"][postNum]["postSourceUrl"]="https://github.com/"+options.repo_name+"/issues/"+str(issue.number)
    Meekdai
        18
    Meekdai  
    OP
       2023-08-17 15:54:33 +08:00
    @forty 不用改代码啊,只需要修改配置文件 config.json 里面的参数就行了。下面这个链接里是 config.json 的示例,对应内容修改为自己的就行了。
    https://github.com/Meekdai/Gmeek/blob/main/CONIFG.md
    forty
        19
    forty  
       2023-09-13 17:32:26 +08:00
    @Meekdai config.json 里面我没看出哪项是指定正文为抓 issues 还是取仓库啊
    Meekdai
        20
    Meekdai  
    OP
       2023-09-13 17:59:56 +08:00
    @forty 目前还不支持抓取仓库的内容,需要修改部分代码可以实现。
    Meekdai
        21
    Meekdai  
    OP
       358 天前
    @stevenshum 目前 Gmeek 更新到了 v2.7 版本已经支持页内搜索了,并且添加了 Tag 筛选功能。
    stevenshum
        22
    stevenshum  
       358 天前
    @Meekdai 我试了一下,好像只能搜索标题,期待越来越好,给作者点个赞
    cqmzgg2023
        23
    cqmzgg2023  
       254 天前
    要是能监视改 backup 里边的 MD 文件,并自动发布就完美了。
    Meekdai
        24
    Meekdai  
    OP
       254 天前
    @cqmzgg2023 这种就不是基于 issues 来写文章了,就是基于 github 仓库编写 MD 文件。不过要实现起来应该不难的,你可以尝试去修改一下。
    amorphobia
        25
    amorphobia  
       247 天前 via iPhone
    问个问题,其他人发 issue 的话会被收录进来吗?
    Meekdai
        26
    Meekdai  
    OP
       246 天前
    @amorphobia 不会的,需要添加一个 label 标签才会被抓取的。
    amorphobia
        27
    amorphobia  
       246 天前 via iPhone
    @Meekdai 巧妙
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2859 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:39 · PVG 21:39 · LAX 05:39 · JFK 08:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.