【python web 编程】读取文件夹,超链接其中所有excel(.xlsx)文件

import os
import pandas as pd


def generate_html(directory):
    html = '<html><body>\n'
    html += '<h1>Index of {0}</h1>\n'.format(directory)
    html += '<ul>\n'

    # 遍历目录下的文件和文件夹
    for filename in os.listdir(directory):
        file_path = os.path.join(directory, filename)

        # 如果是文件夹,则生成超链接并递归调用生成子文件夹的网页
        if os.path.isdir(file_path):
            html += '<li><a href="{0}/index.html">{1}</a></li>\n'.format(filename, filename)
            generate_html(file_path)

        # 如果是文件,并且扩展名为.xlsx,则生成超链接
        elif os.path.isfile(file_path) and filename.endswith('.xlsx'):
            excel_file = file_path
            df = pd.read_excel(excel_file)
            # 将DataFrame转换为HTML
            html_table = df.to_html(index=False, classes="table table-striped")
            # 将HTML保存到文件中(指向内容自己编辑)
            html += '<li><a href="{0}">Excel File: {1}</a></li>\n'.format(filename , filename)

    html += '</ul>\n'
    html += '</body></html>'

    # 将生成的HTML写入文件
    index_html_path = os.path.join(directory, 'index.html')
    with open(index_html_path, 'w') as f:
        f.write(html)


def generate_folder_html(directory):
    # 生成当前文件夹的HTML网页
    generate_html(directory)

    # 遍历当前文件夹下的子文件夹
    for filename in os.listdir(directory):
        file_path = os.path.join(directory, filename)

        # 如果是子文件夹,则递归调用生成子文件夹的HTML网页
        if os.path.isdir(file_path):
            generate_folder_html(file_path)


# 指定目录
directory = 'C:\\Users\\95459\\PycharmProjects\\pythonProject\\calculate data'

# 生成HTML网页
generate_folder_html(directory)

 运行结束后在指定路径中会生成html文件

效果图

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值