自动生成googledrive指定目录的markdown格式的文件夹结构

前言

前一段时间看到goindex项目,无需代理,无需服务器,下载速度感人,顿时我的无限gd有了用武之地。于是迅速搭建好之后,又忙活了几天整理了十几t的资源,很满意。先放个资源库地址。那么问题来了,这么庞大的资源我该如何检索呢?虽然我整理得还是蛮清晰的,可是对于我这个整理者来说要找特定的资源都要费一番功夫,更别说对于新访客了。

于是我决定为所有资源都做一份markdown格式的目录,这样访客可以在一个page中用网页内查找功能方便地查询自己想要的资源,并且能很容易地跳转到指定位置。

github

依赖

代码

import os


# 遍历文件夹
def walkFile(path):
    alist = []
    for root, dirs, files in os.walk(path):
        alist.append(root.split('\\')) # 遍历目录并分隔成列表
    return alist

def process(alist):
    path_len = len(alist[0])
    web_list = []
    for items in alist:
        web = items[path_len:len(items)]
        if len(web) == 0 or '【00】YH' in web:  # 排除根目录以及指定目录
            continue
        webtemp = 'zy.ycyh.ink'+'/'+'/'.join(web) + '/'
        website = webtemp.replace(' ','%20')
        web_list.append([len(web),web[-1],website])  
        # 三个参数,分别为路径深度、最后一级目录名称,站点链接
    return web_list

def web2markdown(web_list):
    handler = open(r'README.md',"w+",encoding = "utf-8")  # 默认README生成在程序目录中
    for web in web_list:
        title_level = web[0]
        if title_level > 3:
            title_level = 0  # 从一级标题开始,三级标题结束,可自行修改
        handler.write('#'*(title_level)+' '+'[' + web[1] + ']' + '(' + web[2] + ')' + '\n'*2)
    handler.close()

def main():
    url = r"G:\我的云端硬盘\00分享文件"  # gd挂载目录
    web2markdown(process(walkFile(url)))
    

if __name__ == '__main__':
    main()
Last modification:October 20th, 2019 at 11:43 am

Leave a Comment