Registriert seit: 26. Okt 2005
Ort: Lippcity
404 Beiträge
Delphi 2005 Personal
|
Re: Infos von Webseiten abrufen
29. Mai 2006, 18:58
Habs jetz folgendermaßen hinbekommen. Ich lasse mir die runtergeladene HTML einfach zum Text konvertieren.
Anhand des Beispiel-Links aus meinem 1. Beitrag
Delphi-Quellcode:
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, URLMon, StdCtrls;
type
TForm2 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure HTML2Text(InFile, OutFile : String);
var s, t: TextFile;
si: File;
uml: String;
param: char;
i, j: integer;
IsTag, Umlaut: Boolean;
ASCII: Integer;
Titel: String;
begin
AssignFile(s,InFile);
AssignFile(t,OutFile);
Reset(s);
Rewrite(t);
IsTag := False;
while not Eof(s) do
begin
Umlaut := False;
j := 0;
read(s, param);
if (param = ' <') or (param = ' {') then
begin
IsTag := true;
write(t, ' ');
end;
// Wenn & gefunden, dann überprüfen ob Sonderzeichen vorliegt.
if not IsTag and (Param = ' &') then
begin
uml := param;
j := 0;
Umlaut := true;
// Maximal 8 Zeichen lesen oder bis ; gefunden
repeat
read(s, param);
inc (j);
uml := uml + param;
until (j = 8) or (param = ' ;');
if (param = ' ;') then
begin
// param := GiveSZ (uml);
write(t,param);
end
else write(t, uml);
Umlaut := false;
end;
if not IsTag and not Umlaut then write(t, param);
if (param = ' >') or (param = ' }') then IsTag := false;
end;
CloseFile(s);
CloseFile(t);
end;
procedure TForm2.Button1Click(Sender: TObject);
var
Datei,Ziel:PChar;
begin
Form2.Caption := ' Download gestartet';
try
Datei := ' http://www.drumheads.de/playlists/Refardeon.html';
Ziel := ' D:\text.html';
UrlDownloadToFile( nil, Datei, Ziel, 0, nil);
Form2.Caption := ' Download beendet';
except
showmessage(' Download abgebrochen');
EXIT;
end;
HTML2TEXT(' D:\text.html',' D:\cnv_text.txt');
Memo1.Lines.LoadFromFile(' D:\cnv_text.txt');
DeleteFile(' D:\text.html');
DeleteFile(' D:\cnv_text.txt');
end;
end.
[edit] Link rausgenommen. Fehler [/edit]
Robin W. Ein Computer kann (fast) alles.... Man muss es ihm nur beibringen
|
|
Zitat
|