Ich versuche, den Tisch mit dem Verordnungsentwurf von this wikipedia pagekann nur Scrape Teil der Tabelle mit Python und BS4
Ich habe ein Problem, wo die Daten nur zu kratzen, die mit einem anderen aus den Reihen gezogen wird, sind Hintergrundfarbe (die mit einem '*' neben der runden Zahl).
Mein Code ist wie folgt:
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))
Wenn Sie Quellcode HTML suchen, werden Sie sehen, dass es etwas mehr dificullt Struktur als table-> tr-> td hat, so sollten Sie es komplexer analysieren. – Compadre