【问题标题】:How to display <IPython.core.display.HTML object>?如何显示 <IPython.core.display.HTML 对象>?
【发布时间】:2019-09-11 06:34:24
【问题描述】:

我尝试运行以下代码,但在显示结果时遇到问题。 另外,我使用 pycharm IDE。

from fastai.text import *

data = pd.read_csv("data_elonmusk.csv",  encoding='latin1')
data.head()

data = (TextList.from_df(data, cols='Tweet')
                .split_by_rand_pct(0.1)
                .label_for_lm()
                .databunch(bs=48))

data.show_batch()

运行“data.show_batch()”行时的输出是:

IPython.core.display.HTML object

【问题讨论】:

  • 请不要在标题中加上“已解决”。而是添加问题的答案,然后将该答案标记为“已接受”。这有效地标志着问题已解决。
  • 或者,如果您的问题对未来的访问者没有帮助,只需删除它即可。
  • 你是怎么解决的?
  • 是的,我只是在 jupyter notebook 上运行这些代码。

标签: python pycharm fast-ai


【解决方案1】:

您只能在浏览器中呈现 HTML,而不能在 Python 控制台/编辑器环境中呈现

因此它适用于 Jupiter notebook、Jupyter Lab 等。

您充其量调用 .data 来查看 HTML,但再次它不会呈现

【讨论】:

    【解决方案2】:

    如果您不想在 Jupyter Notebook 中工作,可以将 data 保存为 HTML 文件并在浏览器中打开。

    with open("data.html", "w") as file:
        file.write(data)
    

    【讨论】:

    • TypeError: write() 参数必须是 str,而不是 HTML
    【解决方案3】:

    我通过在 Jupiter Notebook 上运行代码解决了我的问题。

    【讨论】:

      【解决方案4】:

      您可以在data.show_batch()之后添加此代码:

      plt.show()

      【讨论】:

        【解决方案5】:

        除了编写文件之外,另一个选择是使用 Python 中的 HTML 解析器以编程方式编辑 HTML。 Python中最常用的工具是beautifulsoup。你可以通过安装它

        pip install beautifulsoup4

        然后在你的程序中你可以做

        from bs4 import BeautifulSoup
        
        html_string = data.show_batch().data
        soup = BeautifulSoup(html_string)
        # do some manipulation to the parsed HTML object
        # then do whatever else you want with the object
        

        【讨论】:

          【解决方案6】:

          只需使用 HTML 对象的数据组件即可。

          with open("data.html", "w") as file:
              file.write(data.data)
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2019-07-21
            • 1970-01-01
            • 1970-01-01
            • 2019-10-16
            相关资源
            最近更新 更多