2012-04-30 10 views
0

html5libチュートリアルの最初の手順で、私はかなり混乱した動作をしています。html5libは<None>を返します。

docs伝えます:

import html5lib 
f = open("mydocument.html") 
doc = html5lib.parse(f) 

を。これは、カスタムの "simpletree" の形式でツリーを返します。

ファイルとして私は通常のhtml文書を持っています。しかし、私の場合、これは:

<None> 
>>> doc is None 
False 

私はそれが大丈夫だと信じていますが、私は何が起こるか分かりません。

編集

私はそれ開いたファイルにreadメソッドを呼び出した場合はリターンが文字列としてファイルです:

f = open("mydocument.html") 
f.read() 
# returns string with html 

そしてdoc = html5lib.parse(f)後、f.read()リターンがファイルが既に読み込まれたファイルのように空の文字列、。 <None>が本当にあなたの文書が解析されていないことを意味するものではありません

+0

mydocument.htmlが含まれてみてください? –

+0

ofcourse、これはredmine =のログインページからコピーされたhtmlファイルで、フルパスを '/ home/user/file.html'として使用しています – I159

答えて

1
  • 、それはちょうどあなたの文書に名前がないことを意味します。あなたは

    doc.name = "test" 
    print(doc) 
    

    をすれば、それは

  • parse<test>も、それはあなたのためのファイル、それを自分でオープンする必要はありませんをロードする場合には、引数として文字列を取ることができ、表示されるはずです。

  • は... print(doc.toxml())

関連する問題