2016-03-20 16 views
1

私のpython 3.4.4のコードは次のとおりです。名エラー 'HTML' をbeautifulsoup4で定義されていない

import urllib.request 
from bs4 import BeautifulSoup 
from html.parser import HTMLParser 

urls = 'file:///C:/Users/tarunuday/Documents/scrapdata/mech.html' 
htmlfile = urllib.request.urlopen(urls) 
soup = BeautifulSoup(htmlfile,html.parser) 

私はHTMLParserがpy2.xあることを理解して今、このエラー

Traceback (most recent call last): 
    File "C:\Python34\saved\scrapping\scrapping2.py", line 7, in <module> 
    soup = BeautifulSoup(htmlfile,html.parser) 
    NameError: name 'html' is not defined 

を取得していますし、 html.parserはpy3.xですが、これをどのように動作させることができますか? bs4 siteIf you get the ImportError “No module named html.parser”, your problem is that you’re running the Python 3 version of the code under Python 2.を言いますが、私は3.xのを実行していると私はいないはImportError

答えて

3

エラーが正しいですが、あなたが定義していないhtmlどこでもNameErrorを取得しています。リンク先のドキュメントには、"html.parser"を文字列として渡す必要があることが示されています。 HTMLParserをまったくインポートする必要はありません。

+0

聖なる...うわー、FML。私の悪い。私はそれに数時間を費やしました。ありがとう。 – tarunuday

関連する問題