Hiho Board!
Die Suche habe ich verwendet. Ich habe wohl Threads zur google-suche gefunden, aber keinen, der mein Problem behandelte.
Ich hab mir die Google Web APIs gezogen, einen LicenseKey erworben und folgende
Unit dazu geschrieben (mit dem einen oder anderen Blick auf ein Tutorial
):
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, SoapHTTPClient, GoogleSearch;
type
TForm1 =
class(TForm)
Edit1: TEdit;
Button1: TButton;
Memo1: TMemo;
Label1: TLabel;
Label2: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
function GetGoogleSearchPort(UseWSDL: Boolean=System.False; Addr: string='
'; HTTPRIO: THTTPRIO =
nil): GoogleSearchPort;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var gsp: GoogleSearchPort;
result: GoogleSearchResult;
i: integer;
rea: ResultElementArray;
begin
gsp:=GetGoogleSearchPort(True, '
',
nil);
result:=gsp.doGoogleSearch('
MeinLicenseKey', Edit1.Text, 0, 10, true, '
countryDE', false,
'
lang_de', '
UTF-8', '
UTF-8');
if Assigned(result)
then
begin
Label1.Caption:='
Insgesamt '+IntToStr(result.estimatedTotalResultsCount)+'
Ergebnisse, die
ersten 10 werden angezeigt';
Memo1.Clear;
rea:=result.resultElements;
for i:=0
to high(rea)
do
begin
Memo1.Lines.Add(rea[i].Title);
Memo1.Lines.Add(rea[i].Summary);
Memo1.Lines.Add(rea[i].URL);
Memo1.Lines.Add('
');
end;
result.Free;
end;
end;
end.
Beim Compilen meldet er: "Ungenügende Forward- oder External-Deklaration: 'GetGoogleSearchPort'".
Die
Unit GoogleSearch entstammt dem
WSDL-Import, an der habe ich nichts verändert.
SoapHTTPClient hab ich bei den uses wegen der Verwendung von THTTPRIO deklariert.
Vielleicht ist da ja schon irgendwo der Wurm drin, ich blick jedenfalls nicht so wirklich durch und imo bin ich jetzt auch echt schon lang genug daran gesessen.
In diesem Sinne hoffe ich, dass mir jemand helfen kann,
vielen Dank schonmal,
popserias.