私はドラフトの順番でテーブルをこすりしようとしています背景色(丸数字の隣に「*」が付いたもの)。次のようにすることができます私が引かれているデータのみが異なると行からなるという問題が生じています<a href="https://en.wikipedia.org/wiki/2012_NFL_Draft" rel="nofollow">this wikipedia page</a></p> <p>からわずかスクレイプのPythonとテーブルの一部とBS4
私のコードは次のとおりです。
ためif len(cols) == 9:
条件のだ
wikiURL = "https://en.wikipedia.org/wiki/2012_NFL_Draft"
#create array to store player info in
teams_players = []
# request and parse wikiURL
r = requests.get(wikiURL)
soup = BeautifulSoup(r.content, "html.parser")
#find table in wikipedia
playerData = soup.find('table', {"class": "wikitable sortable"})
for row in playerData.find_all('tr'):
cols = row.find_all('td')
if len(cols) == 9:
teams_players.append((cols[3].text.strip(), cols[4].text.strip()))
for team, player in teams_players:
print('{:35} {}'.format(team, player))
ソースHTMLを見ると、table-> tr-> tdよりも少し複雑な構造になっていることがわかります。より複雑に解析する必要があります。 – Compadre