首页 文章

如何获取保存标签的字符串形式的BeautifulSoup NavigableString

提问于
浏览
0

我正在使用Python的BeautifulSoup处理HTML格式的大型数据文件 .

我正在获取NavigableStrings,我需要在打印之前进行unicode编码 . 如果我从NavigableString获取get_text()或.string,它似乎从中删除所有HTML标记 .

另一方面,NavigableString本身似乎没有.encode(“utf-8”)类型选项 .

那么如何在不剥离标签的情况下将NavigableString转换为普通字符串?

1 回答

  • 1

    要将HTML作为文本打印,您只需将其转换为字符串,然后您可以将其编码为UTF-8,如下所示:

    from bs4 import BeautifulSoup
    
    html = '''<body>
        <div>hello</div>
        </body>
    '''
    
    soup = BeautifulSoup(html)
    print str(soup).encode('utf8')
    

相关问题