2012-04-27 4 views
1

こんにちは:)ちょっと遊んだ後、単純に反転した部分ではなく完全なHTMLタグを返す次の関数を思いついた< > "この" <>(python)美しいスープを使って特定のHTML出力タグを解析する

from BeautifulSoup import BeautifulSoup 
from urllib2 import urlopen 

def get_wotd(): 
    return str((BeautifulSoup(urlopen('http://www.reference.com/wordoftheday'))).findAll('h2')) 

print get_wotd() 

今日の言葉は、例えば、 "間食" です。

[<h2 class="me">nosh</h2>] 

私はあることを出力する必要がある、単に、

nosh 

誰もが、私はこれをやってのける可能性がどのように任意のアイデアを得た:代わりに取得しますか?代わりにBeautifulSoupのlxmlを使用して

答えて

1

使用.text属性内部テキストを取得し、代わりにfind()メソッドを使用する:lxmlのを使用するための

>>> from BeautifulSoup import BeautifulSoup 
>>> from urllib2 import urlopen 
>>> soup = BeautifulSoup(urlopen('http://www.reference.com/wordoftheday')) 
>>> soup.find('h2').text 
u'nosh' 
1

>>> from lxml.html import parse 
>>> tree = parse("http://www.reference.com/wordoftheday") 
>>> tree.xpath("//h2")[0].text 
'nosh' 
+0

理由は単純です:私は持っていません。 MacにBeautifulSoupがインストールされているようです。 – Kimvais

関連する問題