Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - copy befehl


cyan3552 - Mi 06.10.10 02:53
Titel: copy befehl
Johö

Hab hier ein kleines Problem mit meinem Programm und zwar will ich ein Biet-Programm für ebay programmieren.
Dafür lese ich ersteinmal die Seite von ebay ein und dann will ich daraus die Uhrzeit und das datum der
Auktion erfassen.
So jetzt muss ich nur noch das heu vom weizen trennen.
Das wollte ich mit pos und posex machen und dann den Bereich mit copy abtrennen.
Allerdings bekomme ich nie allein das "datum" ausgeben, sondern dannach bleibt immer text stehen den ich nicht haben will.
Was mache ich verkehrt?

...
variable1 :=pos('</span> </span><span><span>(',quelltext);
variable2 := PosEx('</span>', quelltext, datean + 20 );
datum := Copy(quelltext, variable1 +20, variable2 );

Es muss ja auf allen Ebay aktionen anwendbar sein.
Kann man vllt sogar direckt nach dem datum suchen?
Gibt es eine möglichkeit mit unbekannten zusuchen z.B.
m für buchstaben
x für zahl
so sucht man nach z.B 11. Seb. 2010
xx. mmm. xxxx

Habe einfach mal das Program rangehängt.
Falls ihr bessere Vorschläge habt immer gerne, bin in dem Gebiet erst neu angefangen.

vielen Dank

mfg marco


elundril - Mi 06.10.10 03:27

Hallo und :welcome: im Delphi-Forum!

Warum verwendest du nicht die eBay-API [http://developer.ebay.com/common/api/]? Damit sollte es doch eigentlich etwas leichter gehen.

lg elundril


SvenAbeln - Mi 06.10.10 09:49

Den Hinweis auf die Ebay-Api hat user profile iconelundril ja schon gegeben, aber um deine Frage zu beantworten
Zitat:
Was mache ich verkehrt?

  1. Dein erster Suchstring ist nicht 20 sondern 28 Zeichen lang.
  2. Welchen Wert hat datean? In diesen 3 Zeilen bekommt datean zumindest keinen Wert zugewiesen.
  3. Der dritte Parameter von copy gibt die Anzahl der zu kopierenden Zeichen an und nicht den Index bis wohin kopiert werden soll.

So geht es:

Delphi-Quelltext
1:
2:
3:
  variable1 :=pos('</span> </span><span><span>(',quelltext);
  variable2 := PosEx('</span>', quelltext, variable1 + 28 );
  datum := Copy(quelltext, variable1 +28, variable2-(Variable1+28) );


cyan3552 - Mi 06.10.10 14:24

Hey
besten Dank!
Hab den dritten parameter falsch interpretiert.
Jetzt funzt dat.

Warum ich net eBay-API benutze?
Kannte ich bist jetzt noch nicht und jetzt kann ich immer noch nichts damit anfangen.
Muss ich einfach mal blöd fragen, kann ich damit direckt auf Sachen vom Ebay service zugreifen ohne eine Html Seite zu haben?
Verstehe das Prinzip nicht.

Delphi-Quelltext
1:
Test                    

gruß


Andreas L. - Mi 06.10.10 14:27

Schau dir mal das an: http://www.ea4d.com/


cyan3552 - Mi 06.10.10 16:02

Ich glaube als Anfänger kommt ich damit nicht klar.
Man müsste mir dann schon einen Start geben.
Weiß ja nichtmal wie man da ran geht.
Bräuchte vllt mal ein Bespiel oder so damit ich mir da was drunter Vorstellen kann
wie man das einsätzt.
Hört sich für mich nur Interessant an mit einer direckten Schnittstelle^^
XML hat was mit server zu tun?
Aber ich glaube dafür müsste man einen neuen Treat aufmachen.

gruß