当我在BeautifulSoup中使用unicode函数时,它将什么编码转换成Unicode?它会自动使用soup.originalEncoding吗?

from BeautifulSoup import BeautifulSoup
doc = "<html><h1>Heading</h1><p>Text"
soup = BeautifulSoup(doc)
print unicode(soup)


谢谢

最佳答案

unicode()是Python内置的,不是BeautifulSoup的一部分。请参见docs here


  unicode([object[, encoding[, errors]]])
  
  如果给出了编码和/或错误,
  unicode()将解码对象
  可以是8位字符串或
  使用编解码器的字符缓冲区
  编码。编码参数是
  给出编码名称的字符串;
  如果编码未知,
  引发LookupError。错误处理
  根据错误完成;这个
  指定字符的处理
  在输入中无效的
  编码。如果错误是“严格”(
  默认值),则在
  错误,而值“忽略”
  导致错误被默默忽略,
  而“替换”的值导致
  正式的Unicode替换
  字符U + FFFD,用于
  替换不能输入的字符
  被解码。另请参阅编解码器
  模块。


如果未指定编码,则默认使用sys.getdefaultencoding()

08-06 04:38