2016-12-20 5 views
0

Ich habe die nba player data off ESPN zu kratzen versucht, und ich bin in ein Problem laufen, wo, wenn ich dies auszuführen:BeautifulSoup nicht zu erwarten, welche Ergebnisse

from bs4 import BeautifulSoup 
import requests 

r = requests.get("http://www.espn.com/nba/scoreboard/_/date/20161217") 
soup = BeautifulSoup(r.content) 

game_Id = soup.find_all("div", {"id": "events"})  
print(game_Id) 

, das eine Liste des HTML-Code zurückgeben sollte, um die entsprechende Spiele, die an diesem Tag gespielt wurden, aber es gibt mir ein leeres Array. Wer weiß warum?

+2

Die ID 'events' wird nicht im HTML-Inhalt der Seite gerendert, wenn das DOM zum ersten Mal erstellt wird. Wenn Sie die Seitenquelle anzeigen, sehen Sie, dass die # # Ereignisse leer sind. Sie können jedoch genau hinsehen, ob die Daten über AJAX geladen werden oder zu den # -Ereignissen hinzugefügt werden, nachdem das DOM bereit ist. –

+1

Das letzte Mal, als ich überprüft, Scraping ESPN war gegen ihre Nutzungsbedingungen –

+0

BeautifulSoup wird hier nicht funktionieren, müssen Sie Selenium oder etwas verwenden – martianwars

Antwort

Verwandte Themen