1. ホーム
  2. python

[解決済み] 美しいスープとIDによるdivとそのコンテンツの抽出

2022-04-21 20:34:42

質問

soup.find("tagName", { "id" : "articlebody" })

なぜこれは <div id="articlebody"> ... </div> タグとその間にあるもの 何も返ってきません。そして、私はそれが存在することを事実として知っています。

soup.prettify()

soup.find("div", { "id" : "articlebody" }) もうまくいきません。

( EDITです。 BeautifulSoupが私のページを正しくパースしていないことがわかりました。おそらく、私がパースしようとしていたページがSGMLか何かで正しくフォーマットされていないことを意味します)

解決するには?

コードは正常に動作しているので、サンプルドキュメントを投稿してください。

>>> import BeautifulSoup
>>> soup = BeautifulSoup.BeautifulSoup('<html><body><div id="articlebody"> ... </div></body></html')
>>> soup.find("div", {"id": "articlebody"})
<div id="articlebody"> ... </div>

検索 <div> の中にある <div> も同様に動作します。

>>> soup = BeautifulSoup.BeautifulSoup('<html><body><div><div id="articlebody"> ... </div></div></body></html')
>>> soup.find("div", {"id": "articlebody"})
<div id="articlebody"> ... </div>