【问题标题】:Convert CSV file to HTML and display in browser with Pandas将 CSV 文件转换为 HTML 并使用 Pandas 在浏览器中显示
【发布时间】:2020-03-31 13:20:47
【问题描述】:

如何将CSV 文件转换为HTML 并在网络浏览器中通过Python 使用pandas 打开它。 以下是我的程序,但我无法在网页中显示它们:

import pandas
import webbrowser
data = pandas.read_csv(r'C:\Users\issao\Downloads\data.csv')
data = data.to_html()
webbrowser.open('data.html')

【问题讨论】:

  • 您好,欢迎来到 StackOverflow。你能简单介绍一下你想做什么吗?如果你没有准确地解释你的问题,可以帮助你的人可能会被劝阻。

标签: python html pandas csv web


【解决方案1】:

您需要将url 传递给webbrowser

将 html 内容保存到本地文件并将其路径传递给 webbrowser

import os
import webbrowser
import pandas

data = pandas.read_csv(r'C:\Users\issao\Downloads\data.csv')
html = data.to_html()
path = os.path.abspath('data.html')
url = 'file://' + path

with open(path, 'w') as f:
    f.write(html)
webbrowser.open(url)

【讨论】:

    【解决方案2】:

    您缺少几个步骤:

    1. Pandas 不会构建完整的 HTML 页面,而只会构建一个元素。

      pd.DataFrame({'a': [1,2,3]}).to_html()

      返回:<table border="1" class="dataframe">...</table>

    2. 您需要在某处托管 HTML 并打开 Web 浏览器。您可以使用本地文件并从 python (os.system('firefox page.html') 运行浏览器。但我怀疑这就是你要找的东西。

    【讨论】:

      【解决方案3】:

      不直接回答 OP 的问题,但对于正在寻找 Pandas 替代品的人,他们可以查看 csvtotable(https://github.com/vividvilla/csvtotable),尤其是带有“--serve”的选项。示例用法如下所示:csvtotable data.csv --serve。这会将 CSV 文件“提供”给浏览器。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-10-03
        • 1970-01-01
        • 2021-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-15
        • 2019-01-18
        相关资源
        最近更新 更多