/ / BeautifulSoupのスクレーピング:混乱しています - python、beautifulsoup

BeautifulSoup擦り傷:私は混乱しています - python、beautifulsoup

私はこすり落とそうとしている このサイトそして、私はすべてのアンカータグをチェックしたいです。

私はbeautifulsoup 4.3.2をインポートしました、そしてここに私のコードがあります:

url = """http://www.civicinfo.bc.ca/bids?pn=1"""
Html = urlopen(url).read()
Soup = BeautifulSoup(Html, "html.parser")
Content = Soup.find_all("a")

私の問題は、コンテンツが常に空であるということです(すなわち、Content = [])。誰かアイデアがありますか?

回答:

回答№1は2

から ドキュメンテーション html.parser Pythonの特定のバージョンの前にそれほど寛容ではありません。だからあなたは「不正なHTMLを見ているでしょう」。

あなたがしたいことはあなたが使うならうまくいく lxml の代わりに html.parser

から ドキュメンテーション

とはいえ、スピードを上げるためにできることがあります美しいスープもし 基礎となるパーサーとしてlxmlを使用していないのであれば、私のアドバイスから始めましょう。 Beautiful Soupはlxmlを使用するよりはるかに速くドキュメントを解析します html.parserまたはhtml5libを使用してください。

そのため、関連するコードは次のようになります。

Soup = BeautifulSoup(Html, "lxml")