2017-12-07 13 views
1

私はこのAttributeErrorの解決策を探し続けてきましたが、解決策は見つからず、 '_all_strings'の取引を見つけることはできませんでした。なぜ、私は(明らかに)異常ですかAttributeError: 'bytes'オブジェクトに '_all_strings'属性がありませんか?それを回避する方法はありますか?

ウェブクローラーをコーディングしたいのですが、ページの上部と下部にナンセンスがたくさんあります。そのため、HTMLコードをクリーンアップして、不要なノイズを先頭から除外していますWebページの下部に表示されます。

私は、具体的には、以下のそれの最後の行を、コードを実行すると、私ははAttributeErrorを得る:

from __future__ import division 
from urllib.request import urlopen 
from bs4 import BeautifulSoup 

textSource = 'http://celt.ucc.ie/irlpage.html' 
html = urlopen(textSource).read() 
raw = BeautifulSoup.get_text(html) 

これは私が取得フルトレースバックです:

Traceback (most recent call last): 
    File "...Crawler_Celt_Namelink_Test.py", line 7, in <module> 
    raw = BeautifulSoup.get_text(html) 
    File "...Python\Python35\lib\site-packages\bs4\element.py", line 950, in get_text 
    return separator.join([s for s in self._all_strings(
AttributeError: 'bytes' object has no attribute '_all_strings' 

は誰がこれを検出しました前にエラー?それとも誰も私がそれを克服する方法を提案することができますか?

答えて

1

あなたはそれがこのように使われBeautifulSoup docsを見て:

from urllib.request import urlopen 
from bs4 import BeautifulSoup 
textSource = 'http://celt.ucc.ie/irlpage.html' 
html = urlopen(textSource).read() 

soup = BeautifulSoup(html, 'html.parser') 

raw = BeautifulSoup.get_text(soup) 
関連する問題