2016-03-19 16 views
0

クラスから来たスパムの中で特定のテストを見つけるpythonスクリプトを作成しようとしています。残念ながら、私は空のレスポンスまたは "none"を得ています。Python BeautifulSoupクラス内のスパンを見つける

これは、検索しようとイムそれの小さなビット貼り付けるので、病気に非常に特定のページから来ている:私は私のスクリプトから「最後のサーバー配信」tekstを取得しようとしています

<tbody> 
<tr class="zone-dedicated-availability" data-actions="refUnavailable" data-dc="" data-ref="160sk5" data-availability="3600-"> 

<td class="show-on-ref-unavailable elapsed-time-since-last-delivery" colspan="5"> 
<span qtlid="47402"> 
             Last server delivered: today at 01:59. 
            </span><br><a style="font-  size:14px;" href=".." qtlid="50602">Go for a VPS-CLOUD<br><span style="font-size:0.9em;" qtlid="50615">(from £5.99 excl.VAT)</span></a> 
</td> 

を。私はまだ助けをいただければ幸いですので、勉強しています:これはあるとして、今で立ち往生イムは、いくつかの異なるものを試してみましたが、私は有効な出力を得ることができる方法がわからないところ

page = requests.get('...') 
tree = page.content 

soup = BeautifulSoup(tree) 
table = soup.find('tbody', {'class': 'zone-dedicated-availability'}) 
print table 

私はおそらく見つけるの声明で、一部が欠落しています私は必要があるように。

+0

提供した文書には「tbody」タグはありません。 – styvane

+0

私はそこに置いて、私はそこにテキストでそれを言ったが、それがより明確になる場合は、今すぐ追加しました。 – patrick

+0

'td'の前に' tr'タグがありませんか? – styvane

答えて

1

class属性はそうあなたがこれを使用する必要がtrであります必要なデータを取得するには、qtlid="47402"したがって:

In [19]: soup.find('tr', class_='zone-dedicated-availability').find('span', qtlid='47402').get_text(strip=True) 
Out[19]: 'Last server delivered: today at 01:59.' 
0

"zone-dedicated-availability"のクラスのテーブル行を探してみましたか?現在、そのクラスのテーブル本体を検索していて、それを見つけることができないようです。

soup.select('tbody tr.zone-dedicated-availability') 

table = soup.find('tr', {'class': 'zone-dedicated-availability'}) 

あなたはまた、CSS selector and the selectメソッドを使用することができます。

table = soup.find('tbody').find('tr', {'class': 'zone-dedicated-availability'}) 

またはより良い:

関連する問題