Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi WebBrowser String auslesen (https://www.delphipraxis.net/132386-webbrowser-string-auslesen.html)

Mephisto090 11. Apr 2009 12:13


WebBrowser String auslesen
 
Hallo,

Ich will im TWebBrowser ein bestimmten String auslesen

<a href="/user/string"><img src="...

Problem: dieses "user/string" gibt es mehrmals bloß das bei string immer was anderes steht und davon möchte ich alle haben
in einer MemoBox gibt es dafür eine möglichkeit?

So weit habe ich es hin bekommen.
Delphi-Quellcode:
 
...
var htmlcode: string;
begin
  htmlcode:=WebBrowser1.OleObject.Document.Body.InnerHtml;
end;

mkinzler 11. Apr 2009 12:14

Re: WebBrowser String auslesen
 
-Pos()/PosEx()
-Reguläre Ausdrücke

Mephisto090 11. Apr 2009 12:17

Re: WebBrowser String auslesen
 
bin noch net so gut im WeBBrowser kannst du mir vllt ein stück Quelltext geben?

FabianClassen 11. Apr 2009 12:21

Re: WebBrowser String auslesen
 
Bei
Delphi-Quellcode:
Pos();
//und
PosEx();
//Parameter hab ich weggelassen ;)
hast du es nicht mit Funktionen vom WebBrowser zu tun, sondern es handelt sich um Funktionen zur Stringverabeitung.
Ich hoffe es ist ok, wenn ich hier einen Link von Delphi-Treff post:

http://www.delphi-treff.de/tutorials...gverarbeitung/

Les dir das mal durch, ist ein ganz nettes Tut über Stringverabeitung.

MFG
FC
;)

mkinzler 11. Apr 2009 12:23

Re: WebBrowser String auslesen
 
Pos() sucht einen String innerhalb eines anderen (PosEx() mit Offset für das 2. Vorkommen)
Links zu Regulären Ausdrücken
http://www.regular-expressions.info/
http://www.zeitungsjunge.de/

Mephisto090 11. Apr 2009 12:26

Re: WebBrowser String auslesen
 
ja der string den ich dann immer suche der is ja bei jedem unterschiedlich sprich ich kann keinen vorher defenieren (hoffe habe bei den seiten jetzt nix überlesen) und die Position ist auch immer unterschiedlich

danke im vorraus

mkinzler 11. Apr 2009 12:28

Re: WebBrowser String auslesen
 
'/user/' ist doch immer identisch oder? :zwinker:

Mephisto090 11. Apr 2009 12:29

Re: WebBrowser String auslesen
 
ja stimmt stehe gerade voll auf dem schlauch kann einer mal bitte ein bsp posten

FabianClassen 11. Apr 2009 12:35

Re: WebBrowser String auslesen
 
Ein Beispiel für die Funktionen an sich findest du in meinem Link ;)
Ich glaube auf der 2. Seite des Tutorials.

In deinem Fall würde ich mit einer Schleife solange in dem HTML-Text nach deinem Suchstring suchen, bis kein andere mehr gefunden wird.
Dazu musst du dann immmer mit PosEx(); hinter dem letzten gefundenen String anfangen zu suchen, damit die Suche auch so funktioniert wie du es dir vorstellst.

Ich hoffe du verstehst was ich meine.

MFG
FC
;)

Mephisto090 11. Apr 2009 12:38

Re: WebBrowser String auslesen
 
also wenn ich das richtig verstehe

beispiel aus seite 2.

Delphi-Quellcode:
s := '/user/' + ???;
jetzt weiss ich nicht wie ich das machen muss bsw. was rein muss bei ??? damit da der string ausgelsen wird

mkinzler 11. Apr 2009 12:47

Re: WebBrowser String auslesen
 
Delphi-Quellcode:
var
    htmlcode, such, name: string;
    p,p2: Integer;
...

such := '/user/';
p := Pos( such, htmlcode);
while p > 0 do
begin
    inc(p);
    p2 := Pos( #34, htmlcode, p);
    name := Copy( s, p, p2-p);
   ...
   p := PosEx( such, htmlcode, p);
end;
getippt und nicht getestet

Mephisto090 12. Apr 2009 20:06

Re: WebBrowser String auslesen
 
Delphi-Quellcode:
p2 := Pos( #34, htmlcode, p);
da habe ich ein fehler und was meinst du mit den Punkten "..."

mkinzler 12. Apr 2009 20:08

Re: WebBrowser String auslesen
 
Delphi-Quellcode:
p2 := Pos( '"', htmlcode, p);
... steht als Platzhalter für weiteren Code

Mephisto090 12. Apr 2009 20:14

Re: WebBrowser String auslesen
 
als fehler kommt immer noch ")" gefunden aber "," erwartet

mkinzler 12. Apr 2009 20:18

Re: WebBrowser String auslesen
 
Muss PosEx() heissen :oops:

Mephisto090 12. Apr 2009 20:28

Re: WebBrowser String auslesen
 
kein Prob ich muss mich schähmen weil ich hier gerade garnix auf die reihe bekomme

der sagt "s" kennt er nicht von welchem Datentyp muss der sein

mkinzler 12. Apr 2009 20:31

Re: WebBrowser String auslesen
 
Schreib statt s, htmlcode

Mephisto090 12. Apr 2009 21:03

Re: WebBrowser String auslesen
 
kurze frage neben bei kann ich aus einer schleife raus springen und zur nächsten gehen wenn er den wert den ich suche z.b. erreicht hat

ich kenne bei einer Batch datei z.b. GoTo gibt es das auch bei Delphi sowas in der art

gut funktioniert und wie gebe ich die namen jetzt in einem Memo feld aus

Delphi-Quellcode:
Memo5.Lines.Add(...);

mkinzler 12. Apr 2009 21:05

Re: WebBrowser String auslesen
 
Der Befehl zum Abbruch einer Schleife heisst
Delphi-Quellcode:
break;


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz