前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >5分钟将简书markdown文章批量迁移到django站点

5分钟将简书markdown文章批量迁移到django站点

作者头像
zhaoolee
发布2018-11-19 16:05:48
6390
发布2018-11-19 16:05:48
举报
文章被收录于专栏:木子昭的博客木子昭的博客

相信很多小伙伴和我一样,写博客, 能用markdown就绝不用富文本, markdown有很多好处, 比如: 可以快速迁移

  • 这次教大家如何批量迁移简书的markdown到自己的网站

迁移后的效果展示(GIF效果图)

链接地址: https://fangyuanxiaozhan.com (欢迎访问, 哈哈!)

第一步: 从简书后台下载文章, 并解压

第二步: 将文件夹Chrome插件英雄榜放入项目静态文件目录下, 完成python读取md文档的逻辑

  • 放入django静态目录

  • django 处理函数
代码语言:javascript
复制
## 文章页面
def article(request):
    # 添加目录
    blog_md_list = []
    for relative_file_dir_path, file_dir_name, file_name in os.walk(BASE_DIR+"/webStatic/blog-md"):
        # print("当前文件夹路径(字符串)", relative_file_dir_path)
        # print("当前文件夹目录下包含的文件夹(数组)", file_dir_name)
        # print("当前文件夹目录下包含的文件名(数组)", file_name)
        for file in file_name:
            if(file.startswith('.') == False):
                title = file[:-3]
                blog_md_list.append({"file_path": relative_file_dir_path+"/"+file, "title": title})

    # 正文
    md_path = request.path.lstrip('/blog/article/')
    # 获取文章标题
    md_title = md_path.split('/')[-1][:-3]
    md_txt = {"md": ''}
    with open("/"+md_path,  'r') as f:
        md_txt = {"md": f.read()}
    return render(request, "blog/page.html",locals())

第三步: 完成前端页面的渲染逻辑:

核心代码

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>{{md_title}}</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/showdown/1.9.0/showdown.min.js"></script>
</head>
<body>
    <style>
        img{
            width: 80%;
        }

    </style>
     <div id="result"></div>
    <script type="text/javascript">
    (function convert(md_txt) {
        var text = md_txt;
        var converter = new showdown.Converter();
        var html = converter.makeHtml(text);
        document.getElementById("result").innerHTML = html;
    })({{ md_txt | safe }}["md"]);
    </script>
</body>
</html>

小结:

由于篇幅原因, 上面只是放上了前端和后端的核心处理逻辑, 前端的页面样式, 可以访问https://fangyuanxiaozhan.com进行查看, 前端是开源的, 打开chrome开发者工具, 什么都有了, 当然对以上步骤有疑问, 可以在下方给我留言, 我会及时解答~

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.11.18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一步: 从简书后台下载文章, 并解压
  • 第二步: 将文件夹Chrome插件英雄榜放入项目静态文件目录下, 完成python读取md文档的逻辑
  • 第三步: 完成前端页面的渲染逻辑:
  • 小结:
相关产品与服务
云开发 CLI 工具
云开发 CLI 工具(Cloudbase CLI Devtools,CCLID)是云开发官方指定的 CLI 工具,可以帮助开发者快速构建 Serverless 应用。CLI 工具提供能力包括文件储存的管理、云函数的部署、模板项目的创建、HTTP Service、静态网站托管等,您可以专注于编码,无需在平台中切换各类配置。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档