Python 找出ulsoup4正在使用的解析器?

Python 找出ulsoup4正在使用的解析器?,python,html,beautifulsoup,html-parsing,Python,Html,Beautifulsoup,Html Parsing,我已经使用beautifulsoup4编写了一个脚本,它可以在一台机器上工作,但不能在另一台机器上工作。原因是在另一台机器上,BeautifulSoup()构造函数自动将转换为,而这不是我机器上的行为。信不信由你,这对我的剧本很重要 我估计这两台机器可能使用两个不同的底层HTML解析器。我怎样才能知道他们使用的是什么解析器?我知道我可以指定BeautifulSoup使用的解析器库,但首先我需要知道要统一到哪个库 这两台机器都运行python2.7.6我不认为这是有文档记录的,但是如果您查看一下,

我已经使用beautifulsoup4编写了一个脚本,它可以在一台机器上工作,但不能在另一台机器上工作。原因是在另一台机器上,BeautifulSoup()构造函数自动将

转换为

,而这不是我机器上的行为。信不信由你,这对我的剧本很重要

我估计这两台机器可能使用两个不同的底层HTML解析器。我怎样才能知道他们使用的是什么解析器?我知道我可以指定BeautifulSoup使用的解析器库,但首先我需要知道要统一到哪个库


这两台机器都运行python2.7.6

我不认为这是有文档记录的,但是如果您查看一下,根据
builder
和/或
features
参数选择的类的实例将存储在
builder
属性中

因此,您可能需要
类型(soup.builder)。\uuuu name\uuuuu
,这将为您提供以下选项之一:

  • HTMLParserTreeBuilder
    :使用
    html.parser
  • LXMLTreeBuilder
    :使用
    lxml
  • LXMLTreeBuilderForXML
    :使用
    xml
  • HTML5TreeBuilder
    :使用
    html5lib
(当然,这假设您没有围绕其他解析器编写自己的自定义生成器,但如果您已经编写了,希望您知道它。:)