2015-11-04 23 views
26

BeautifulSoupをインストールした後、cmdでPythonを実行するたびに、この警告が表示されます。BeautifulSoupユーザーの警告を取り除くには?

D:\Application\python\lib\site-packages\beautifulsoup4-4.4.1-py3.4.egg\bs4\__init__.py:166: 
UserWarning: No parser was explicitly specified, so I'm using the best 
available HTML parser for this system ("html.parser"). This usually isn't a 
problem, but if you run this code on another system, or in a different 
virtual environment, it may use a different parser and behave differently. 

To get rid of this warning, change this: 

BeautifulSoup([your markup]) 

to this: 

BeautifulSoup([your markup], "html.parser") 

私は理想的ではないし、それを解決する方法はありません。

+8

メッセージは何をする正確に何を言っている: 'BeautifulSoup([マークアップ]、 "html.parser")'。あなたはそれをして、あなたの出力が何であるかを見ましたか? BeautifulSoupはあなたの人生を楽にしようとしています。スープを聞く。 :) – idjaw

+1

'soup = BeautifulSoup(html)'のようなコードを 'soup = BeautifulSoup(html、" html.parser ")'に変更してください。 –

+0

ありがとうございました! :D – jellyfishhuang

答えて

51

問題の解決方法は、エラーメッセージに明らかに記載されています。以下のようなコードは、XML/HTML/etcを指定しません。パーサ。

BeautifulSoup(...) 

エラーを修正するためには、そのように、あなたが使用したいのですがどのパーサを指定する必要があります:もしあなたが

BeautifulSoup(..., "html.parser") 

ます。また、サードパーティ製のパーサーをインストールすることができますdが好きです。

+0

ありがとう!解決済み。 – jellyfishhuang

+0

それは素晴らしいです!できます –

10

ドキュメントでは、速度を向上させるためにlxmlをインストールして使用することをお勧めします。

BeautifulSoup(html, "lxml") 

以前の2.7.3よりPythonの2のバージョンを使用して、またはそれ以前のバージョン3.2.2よりもPythonの3のバージョン している場合、それはあなたがlxmlの をインストールすることが不可欠ですかhtml5lib・パイソンの組み込みHTMLパーサーでは、古いバージョンの ではあまりよくありません。

LXMLパーサをUbuntuで

  • (ベースRHEL)(Debianの)

    apt-get install python-lxml 
    
  • のFedora

    dnf install python-lxml 
    
  • 使用PIPのインストール

    pip install lxml 
    
関連する問題