Webpage-Crawler mit BS
Verfasst: Donnerstag 3. Mai 2018, 21:50
Hallo zusammen,
ich noch realtiv neu, was das Thema Python angeht. Kenn mich aber mit Programmierung/Skripten einigermaßen aus.
Ich würde gern für einen Kumpel versuchen mit Python den Spielplan einer Mannschaft von www.fussball.de auszulesen.
Allerdings weiß ich nicht genau, wie ich die Ajax-Calls absetzen muss, damit die relevanten Daten überhaupt auf die Seite kommen.
Auf der Seite http://www.fussball.de/mannschaft/sv-au ... 01VTR8C1K7#!/
scheint es nötig zu sein, erst Mannschaftsspielplan und dann Start und Endezeitraum auszuwählen, bevor man die Daten dann aus dem Quelltext ziehen kann.
Wäre nett, wenn jemand eine Idee hätte wie ich das machen muss.
Ziel ist es, den gesamten Saisionplan rauszuziehen.
Hier mein kläglicher erster Versuch
So long,
Mega
ich noch realtiv neu, was das Thema Python angeht. Kenn mich aber mit Programmierung/Skripten einigermaßen aus.
Ich würde gern für einen Kumpel versuchen mit Python den Spielplan einer Mannschaft von www.fussball.de auszulesen.
Allerdings weiß ich nicht genau, wie ich die Ajax-Calls absetzen muss, damit die relevanten Daten überhaupt auf die Seite kommen.
Auf der Seite http://www.fussball.de/mannschaft/sv-au ... 01VTR8C1K7#!/
scheint es nötig zu sein, erst Mannschaftsspielplan und dann Start und Endezeitraum auszuwählen, bevor man die Daten dann aus dem Quelltext ziehen kann.
Wäre nett, wenn jemand eine Idee hätte wie ich das machen muss.
Ziel ist es, den gesamten Saisionplan rauszuziehen.
Hier mein kläglicher erster Versuch

Code: Alles auswählen
from requests import get
from bs4 import BeautifulSoup
import re
import json
team_id = '011MIBM9IK000000VTVG0001VTR8C1K7'
#url = "http://www.fussball.de/mannschaft/sv-aue-liebenau-sv-aue-liebenau-niedersachsen/-/saison/01VSEGVU4K000000VS548984VU8N0U3U/team-id/{}#!/".format(team_id)
url = "http://www.fussball.de/mannschaft/sv-aue-liebenau-sv-aue-liebenau-niedersachsen/-/saison/01VSEGVU4K000000VS548984VU8N0U3U/team-id/011MIAMBA4000000VTVG0001VTR8C1K7#!/"
print('URL: ' + url)
response = get(url) # Download team games page
print("Status: " + str(response.status_code))
#print("Status: " + str(response.text))
html = BeautifulSoup(response.content, "lxml") # Parse
#print(html)
stats = html.find_all(class_='table-container fixtures-matches-table club-matchplan-table')
print(stats)
print("-------------------------------------")
dates = stats[0].find_all(class_="hidden-small inline")
print(dates)
Mega