私が取り組んでいるプロジェクトのMLBデータを解析しようとしています。私はコーディングと美しいスープを使用しようとすることに新しいです。私が書いたコードは以下の通りです。私の問題は、.select
を使用した後、リスト形式で複数のhtml要素が返されますが、本当に必要なのはリスト形式の要素内の実際の数値です。私はテキストを取得するさまざまな方法を使用しようとしましたが、リストをテキストとして返すことができないというエラーが発生し続けます。 ABSoup[1].getText
を使用すると、1つの値を取得できますが、すべてを一度に取得する方法がわかりません。私はまた、複数回反復する関数を使用してみましたが、私はこれもエラーが発生します。新規の開発者への助言や助けをいただければ幸いです。BeautifulSoup.selectからテキスト全体を取得する
import requests
import bs4
data = requests.get('http://www.baseball-reference.com/players/gl.fcgi? id=harpebr03&t=b&year=2017')
MLBsoup = bs4.BeautifulSoup(data.text, 'html.parser')
ABSoup = MLBsoup.select('td[data-stat="AB"]')
print (ABSoup)
#[<td class="right " data-stat="AB">3</td>, <td class="right " data-stat="AB">4</td>, <td class="right " data-stat="AB">3</td>, <td class="right " data-stat="AB">4</td>, <td class="right " data-stat="AB">4</td>, <td class="right " data-stat="AB">4</td>, <td class="right " data-stat="AB">4</td>, <td class="right " data-stat="AB">2</td>, <td class="right " data-stat="AB">4</td>.....
が.select部分は、出力の先頭に、したがってリスト[ブラケットを返しているということである(同様端に1つあります)。これが私に美しいスープを通すことができないリストであるという事実です。 – dqups1
@ dqups1、私は私の答えに編集セクションを追加しました。 –
しかし、あなたの助けをありがとう。 – dqups1