私はESPNのウェブサイトから大学サッカーのリクルートデータを削り取ろうとしています。私は必要なすべてのTDタグを削る方法を考え出しましたが、私の出力はタグとその中のすべてを、実際のテキストで囲んで返しています。美しいスープのリターンタグとテキスト
私はウェブサイトで数時間の質問をしてきましたが、.textまたは.stringのいずれかでこの問題を修正する必要がありますが、どちらも問題なく動作しているようです。私はそれらを間違った場所に置いている可能性があります。ここで
は、私が実行しているコードです:
from bs4 import BeautifulSoup
from urllib2 import urlopen
f = open("17athletes.txt", 'w')
sock = urlopen("http://espn.go.com/college-sports/football/recruiting/playerrankings/_/position/athlete/class/2017/view/position")
html = sock.read()
sock.close()
soup = BeautifulSoup (html, "lxml")
for tr in soup.findAll("tr"):
tds = str(tr.find_all("td"))
f.write(tds)
f.close()
そして、これは、それが戻っているもののほんの一部です:
<td width="3%">RK</td>, <td width="25%">PLAYER</td>, <td width="6%">POS</td>
私は置くところに問題がある場合、私は思ったんだけどコード内のstr()
?あるいは、私は、ESPNがそうした複雑なサイトであるため、何か他に必要なことがあるかどうか疑問に思っています。私はこのすべてに非常に新しいですが、私は正しい方法を学ぶために全力を尽くしています。 BeautifulSoup 2.4とPython 2.7を使うとそれが役に立ちます。前もって感謝します!
* "どちらも動作していないようです" *どのように動作していないのでしょうか? – har07
私はどちらかを試しても、私はまだテキストの代わりにタグとテキストの両方を取得しているようです。 – Cstansell2199