代码之家  ›  专栏  ›  技术社区  ›  Greg

如何在使用pandas时忽略<sup></sup>标签中的内容。阅读html?

  •  0
  • Greg  · 技术社区  · 8 年前

    如何忽略内部内容 <sup></sup> 使用时 pandas.read_html 方法

    表数据的一个例子 <td>12&nbsp;December 2018<sup>1</sup></td> 转化为 12 December 20181 .

    如何从内部忽略内容 <sup> 标签?

    0 回复  |  直到 8 年前
        1
  •  1
  •   bluenote10    5 年前

    熊猫建议的问题

    在调用此函数后,需要进行一些清理。

    是因为它删除了标记,所以进行适当清理所需的信息丢失了。

    我看到的唯一解决方案是作为预处理步骤清理HTML。你可以用 lxml.html.clean.Cleaner 为了这个目的。作为起点,你可以尝试以下方法:

    from lxml.html.clean import Cleaner
    
    
    def clean_html(raw_html):
        cleaner = Cleaner(remove_tags=["sup"])
        return cleaner.clean_html(raw_html).decode("utf-8")
    

    然后在中使用清理过的HTML pd.read_html 。您可能需要使用清洁器的其他设置来保留/清洁所需的内容。