Avatar billede kennethv Nybegynder
02. november 2010 - 00:22 Der er 17 kommentarer og
1 løsning

Vente indtil webbrowser er færdig med at læse en website.

Hej Alle,

Jeg sidder og "loader" en website med webbowser og vil gerne vente til hele siden er "loaded".

Jeg kan dog ikke helt holde styr på hvornår dette er sket.

Mit mål er, at kunne søge i htmlsource og finde Afsendelsesdato på denne side:

http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/da/details?c=dk&cs=RC1077943&l=da&s=pad&~ck=anavml&servicetag=3k6651j

Nummeret: 3k6651j er et servicetag som kan bruges til at slå op.

Jeg har prøvet dette:

procedure TForm1.Button1Click(Sender: TObject);
begin
  WebBrowser1.Navigate('http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/da/details?c=dk&cs=RC1077943&l=da&s=pad&~ck=anavml&servicetag=3k6651j');
    showmessage('Fundet');
end;

procedure TForm1.WebBrowser1NavigateComplete2(ASender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
  Showmessage('Done');
end;

Resultatet af dette er, at Showmessage('Fundet'); bliver vist med det samme på skærmen,og Showmessage('Done'); bliver vist lidt efter, men 2 gange med 5 sekunder imellem.

Er der noget jeg har glemt eller bruger man ikke Webbrowser til dette?

Jeg har osse prøvet dette:

MemoryStream:=TMemoryStream.Create;
IdHTTP1.get('http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/da/details?c=dk&cs=RC1077943&l=da&s=pad&~ck=anavml&servicetag=3k6651j',memorystream);
MemoryStream.Position:=0;
Memorystream.SaveToFile('zzz.txt');
Memo1.Lines.LoadFromStream(MemoryStream);
MemoryStream.Free;
Memo1.Lines.LoadFromFile('zzz.txt');

Men får en connection refused. Er ikke sådan lige med hvorfor.
Håber nogen kan hjælpe mig.
Venligst
Avatar billede hugopedersen Nybegynder
02. november 2010 - 06:59 #1
Har selv med held brugt nedenstående for at hente en side ned i en fil som jeg så konverterer og parser for at finde de oplysninger jeg har brug for.

function THAMInfo.DownloadHTM(const aURL, aFileName: string): boolean;
begin
  Result := True;
  with TDownLoadURL.Create(nil) do
  try
    URL := aURL;
    Filename := aFileName;
    try
      ExecuteTarget(nil);
    except
      Result:=False
    end;
  finally
    Free;
  end;
end;
02. november 2010 - 07:44 #2
HEJ

I TWebbrowseren (WB) har du et EVENT - OnDocumentComplete, som først fyrer, når HELE siden er indlæst.

Kan du bruge denne ?

Er på vej på job nu, så jeg har ikke den helt store tid til det her nu, vil se på det lidt senere (på jobben !)

KRistian
Avatar billede kennethv Nybegynder
02. november 2010 - 08:29 #3
@Kristian.

Hvis jeg putter showmessage('Done'); i OnDocumentComplete, fremkommer "Done" 2 gange.
Avatar billede kennethv Nybegynder
02. november 2010 - 10:33 #4
@HugoPedersen

Hvis du ligge et svar får du point.

Det virker perfect.

Tak for det.
Avatar billede hugopedersen Nybegynder
02. november 2010 - 10:37 #5
OK - jeg bruger det selv til at slå op i IT og Telestyrelsens callsign database fra et lille program jeg har lavet for altid at have adgang til sidste nye data (det er 'a pain in a bodypart' at bruge opslag via hjemmesiden)
Avatar billede kennethv Nybegynder
02. november 2010 - 10:47 #6
Hvad er det, der hentes fra deres hjemmeside?
Avatar billede hugopedersen Nybegynder
02. november 2010 - 10:59 #7
Oplysninger om radioamatører.
Man kan købe et program for en 50'er der anvender et udtræk fra deres DB, men den er jo op til 1 år gammel. Så tænkte jeg om ikke man selv kunne lave noget.
Avatar billede hugopedersen Nybegynder
02. november 2010 - 11:02 #8
Skal du have en kopi af programmet, så smid en mailadresse
Avatar billede kennethv Nybegynder
02. november 2010 - 11:04 #9
:) Mange tak, men nej tak, jeg troede det måske var omkring telefoni. :)
Avatar billede hugopedersen Nybegynder
02. november 2010 - 11:06 #10
Ja de gule sider har jeg også rodet lidt med, men jeg fik det aldrig til at virke :-)
Avatar billede kennethv Nybegynder
02. november 2010 - 11:15 #11
:)

hvis du vil arbejde med telefoni så prøv at se denne side og fortæl mig om det er noget.

http://www.heraconsult.dk
Avatar billede kennethv Nybegynder
02. november 2010 - 12:31 #12
Iøvrigt, er det muligt at i stedet for at gemme indhold i en fil at kunne gemme det i Memo og derfra læse indholdet?
Avatar billede hugopedersen Nybegynder
02. november 2010 - 12:43 #13
Det skulle da ikke undre mig om der findes en anden metode - jeg har bare ikke haft behov for at se teksten.
02. november 2010 - 13:22 #14
HEJ

En af de mere (læs: mest) irriterende ting ved et arbejde er, at de tager ens gode tid fuldstændig. Men lønnen er god.... ! 

Undskyld min sene fremkomst.

Jeg har set lidt på sagen her efter middag, men da hugopedersen ser ud til at have løst problemet, er der ingen grund til at gå videre med det. Udover den akademiske interesse.

Held og lykke i den videre færd.

KRistian
02. november 2010 - 13:26 #15
Til HUgo P.

Ang indlæg # 7:

Den database fra Telestyrelsen (Callsign database) har du et link på den ?

(Er selv radioamatør - derfor...)

KRistian
Avatar billede hugopedersen Nybegynder
02. november 2010 - 14:17 #16
IT og telestyrelsens er
http://frekvensregistret.itst.dk/Search/Search.aspx
Den jeg plejer at købe er
http://www.oz1als.com/qthliste/default.htm

Den jeg selv har lavet kan du få hvis du smider en mailadresse.
02. november 2010 - 16:58 #17
HEj,

Den er fin. Takker for link og tilbud.

Mail adr:  snestrup2000@yahoo.dk


Kristian
Avatar billede hugopedersen Nybegynder
03. november 2010 - 07:12 #18
Fil sendt til adressen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester