AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Openligadb.de

Ein Thema von MATASTYLE · begonnen am 22. Jul 2010 · letzter Beitrag vom 10. Dez 2013
Antwort Antwort
MATASTYLE

Registriert seit: 20. Jul 2010
3 Beiträge
 
Delphi 2 Desktop
 
#1

Openligadb.de

  Alt 22. Jul 2010, 12:44
Hallo zusammen,

Ich bin blutiger anfänger, würde aber gerne die bundesliga spieltage von der seite openligadb.de über ein button click ausgeben, hab aber irgendwie nicht die leiseste ahnung wie ich das anstellen soll.

Bitte um hilfe!!!!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Openligadb.de

  Alt 22. Jul 2010, 13:04
Diese Seite stellt alles nötige als XML-Dateien zur Verfügung.

* du lädst also die gewünschte Datei runter
> Stichwort Hier im Forum suchenIndy ... gibt bestimmt einige Komponenten in deinem Delphi, welche mit TId... anfangen (für sowas wäre es gut, wenn du die verwende DelphiVersion/Programmiersprache auch nennen würdest oder sie in dein DP-Profil einträgst)
* dieses kannst du z.B. in einen Stream oder einen String laden lassen
* diesen String/Stream übergibst du an einen XML-Parser (z.B. siehe Hier im Forum suchenTXMLDocument)
* und über dieses bekommst du Zugriff auf die einzelnen Daten/Einträge und kannst sie so auslesen und dann anzeigen.

(wie die Schnittstellen gestalltet sind, also was man senden muß um etwas zu bekommen, steht auf deren Webseite beschrieben)




Du kannst das Ganze aber auch direkt als Hier im Forum suchenWebservice importieren und darüber drauf zugreifen.
$2B or not $2B

Geändert von himitsu (22. Jul 2010 um 13:08 Uhr)
  Mit Zitat antworten Zitat
MATASTYLE

Registriert seit: 20. Jul 2010
3 Beiträge
 
Delphi 2 Desktop
 
#3

AW: Openligadb.de

  Alt 22. Jul 2010, 13:26
Nutze delphi 2007

Hab jetzt die sportsdata.pas erstellt,weiss aber jetzt nicht was ich mit dieser machen muss!
Angehängte Dateien
Dateityp: pas sportsdata.pas (33,4 KB, 8x aufgerufen)

Geändert von TBx (11. Dez 2013 um 09:33 Uhr) Grund: Unit aus dem Post extrahiert und als Datei angehängt.
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#4

AW: Openligadb.de

  Alt 22. Jul 2010, 13:34
Mit Inhalt füllen...?

Die nötigen Schritte hat dir himi doch schon genannt.
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell

Geändert von Mithrandir (22. Jul 2010 um 13:36 Uhr) Grund: Quellcode stand beim Antworten noch nicht da.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

AW: Openligadb.de

  Alt 22. Jul 2010, 14:03
k.A. aber so wie es aussieht, besorgst du dir über GetSportsdataSoap ein SportsdataSoap und wiederum darüber kannst du dann verschiedene Dinge abrufen.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von duff
duff

Registriert seit: 26. Jan 2005
Ort: Brühl
76 Beiträge
 
Delphi 2007 Professional
 
#6

AW: Openligadb.de

  Alt 22. Jul 2010, 23:27
Hallo hab hier mal eine kleine Beispielanwendung gebastelt.

Vielleicht hilft es dir ja auf die Sprünge

Viel Erfolg
Angehängte Dateien
Dateityp: zip openliga_test.zip (695,2 KB, 19x aufgerufen)
  Mit Zitat antworten Zitat
MATASTYLE

Registriert seit: 20. Jul 2010
3 Beiträge
 
Delphi 2 Desktop
 
#7

AW: Openligadb.de

  Alt 23. Jul 2010, 12:27
Danke euch für die schnellen und guten antworten!!!!
  Mit Zitat antworten Zitat
sintronic86

Registriert seit: 7. Dez 2009
Ort: Barsinghausen
90 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#8

AW: Openligadb.de

  Alt 5. Nov 2013, 10:26
Hallo ihr,
ich muss diesen Thread nocheinmal anfachen.
Und zwar habe ich vor ein Tipp-Programm für meinen Vater zu programmieren (ich selbst habe nicht wirklich Interesse an Fussball).

Es funktioniert bis zu einem gewissen Grad auch ganz gut, nur leider habe ich folgendes Problem.

Der Aufruf:
GetMatchdataByGroupLeagueSaison(10, 'bl1','2010') beispielsweise funktioniert super wärend
GetMatchdataByGroupLeagueSaison(11, 'bl1','2010') den folgenden Fehler verursacht:
"Im Projekt Test.exe ist eine Exception der Klasse EPropertyConvertError mit der Meldung 'Ungültiges Eigenschaftselement: ' aufgetreten."

Der Aufruf:
GetMatchdataByLeagueSaison('bl1','2010') verursacht den selben Fehler




Ich bekomme es auf Biegen und Brechen nicht hin.


NACHTRAG:
Habe noch ein wenig herumprobiert. Mir scheint es, als wenn bestimmte Spieltage nicht funktionieren.
Leider konnte ich beim Livetest auf der Internetseite keine ungewöhnlichen Datensätze finden.
Kann mir einer von euch vielleicht sagen, woran ich scheitere?
Björn

Geändert von sintronic86 ( 5. Nov 2013 um 10:42 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

AW: Openligadb.de

  Alt 6. Nov 2013, 09:18
Ich würde dir empfehlen statt einfach gewisse Werte einzugeben dir die Gruppen vorher abzurufen mit:

function GetAvailGroups(const leagueShortcut: WideString; const leagueSaison: WideString): ArrayOfGroup; stdcall; In den Gruppen steht dann die GruppenID die du bei GetMatchdataByGroupLeagueSaison übergeben musst.

Edit:

Delphi-Quellcode:
function GetAvailSports: ArrayOfSport; stdcall;
function GetAvailLeaguesBySports(const sportID: Integer): ArrayOfLeague; stdcall;
Wären sicher auch praktisch um falsche Eingaben zu verhindern.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
sintronic86

Registriert seit: 7. Dez 2009
Ort: Barsinghausen
90 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

AW: Openligadb.de

  Alt 10. Dez 2013, 14:13
Hallo Neutral General,

der Einwand ist gut und ich denke, da werde ich es auch noch hinbewegen.
Aber ich habe den Fehler bereits gefunden.

Und zwar liegt es an ein paar bestimmten Werten im "Goal":

Delphi-Quellcode:
Goal = class(TRemotable)
  private
    FgoalID: Integer;
    FgoalMachID: Integer;
    FgoalScoreTeam1: Integer;
    FgoalScoreTeam2: Integer;
    FgoalMatchMinute: Integer;
    FgoalGetterID: Integer;
    FgoalGetterName: string;
    FgoalGetterName_Specified: boolean;
// FgoalPenalty: Boolean;
// FgoalOwnGoal: Boolean;
// FgoalOvertime: Boolean;
    FgoalComment: string;
    FgoalComment_Specified: boolean;
    procedure SetgoalGetterName(Index: Integer; const Astring: string);
    function goalGetterName_Specified(Index: Integer): boolean;
    procedure SetgoalComment(Index: Integer; const Astring: string);
    function goalComment_Specified(Index: Integer): boolean;
  published
    property goalID: Integer read FgoalID write FgoalID;
    property goalMachID: Integer Index (IS_NLBL) read FgoalMachID write FgoalMachID;
    property goalScoreTeam1: Integer Index (IS_NLBL) read FgoalScoreTeam1 write FgoalScoreTeam1;
    property goalScoreTeam2: Integer Index (IS_NLBL) read FgoalScoreTeam2 write FgoalScoreTeam2;
    property goalMatchMinute: Integer Index (IS_NLBL) read FgoalMatchMinute write FgoalMatchMinute;
    property goalGetterID: Integer read FgoalGetterID write FgoalGetterID;
    property goalGetterName: string Index (IS_OPTN) read FgoalGetterName write SetgoalGetterName stored goalGetterName_Specified;
// property goalPenalty: Boolean Index (IS_NLBL) read FgoalPenalty write FgoalPenalty;
// property goalOwnGoal: Boolean Index (IS_NLBL) read FgoalOwnGoal write FgoalOwnGoal;
// property goalOvertime: Boolean Index (IS_NLBL) read FgoalOvertime write FgoalOvertime;
    property goalComment: string Index (IS_OPTN) read FgoalComment write SetgoalComment stored goalComment_Specified;
  end;
Ich habe den Code wie oben beschrieben angepasst und nun funktioniert es.
Allerdings habe ich keine Ahnung warum das so ist.


Aber ich habe jetzt andere Probleme. Ich habe das Programm jetzt soweit, dass es die Daten per "SportsdataSoap" aus dem Netz zieht und ich es in eine SQLite-Datenbank schreibe. Allerdings möchte ich nun meine Clientdatasets abfragen, bevor ich die Daten reinschreibe, ob diese bereits vorhanden sind. Aber ich bekomme bei beispielsweise folgendem Aufruf

Result := ClientDataSet_Result.Locate('ResultMatchID;ResultTypeID', VarArrayOf([AResultMatchID, AResultTypeID]), [loCaseInsensitive]) folgende Fehlermeldung:

"Exception EDatabaseError in Modul Oddset_2.exe bei 00719ACF.
Der Typ von Feld 'ResultMatchID' wird nicht unterstützt."



Die Felder in meiner SQLite-Datenbank sind alle im Integer-Format angelegt.
Vielleicht hat ja einer eine Anregung für mich!!!
Björn
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz