3

このスパンがあり、タイトルを取得したい

<span title="Something"></span>

美しいスープでそれを得る方法は?

res = soup.find('span')
print res //Was trying to add res.title but result is 'None'
4

2 に答える 2

11

次のようにアクセスできるはずです。

res = soup.find('span')['title']

ドキュメント

編集:明確にする必要があります。 res は title 属性の値になります。要素を後で使用する場合は、コードを次のように変更します。

res = soup.find('span')
title = res['title']

resその後、 (必要に応じて)使い続けることができます。

また、.find単一の要素を返します。HTML には複数のスパンがある可能性があるため、必要なスパンであることを確認する必要があります。

于 2012-10-19T21:32:58.223 に答える
0

これはドキュメントにあるものです:

soup.findAll(['title', 'p'])
# [<title>Page title</title>, 
#  <p id="firstpara" align="center">This is paragraph <b>one</b>.</p>, 
#  <p id="secondpara" align="blah">This is paragraph <b>two</b>.</p>]

soup.findAll({'title' : True, 'p' : True})
# [<title>Page title</title>, 
#  <p id="firstpara" align="center">This is paragraph <b>one</b>.</p>, 
#  <p id="secondpara" align="blah">This is paragraph <b>two</b>.</p>]

正規表現を使用することもできます。

于 2012-10-19T21:37:22.023 に答える