Einzelnen Beitrag anzeigen

Benutzerbild von calculon
calculon

Registriert seit: 16. Sep 2006
256 Beiträge
 
Delphi 7 Personal
 
#9

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 14:59
Zitat von SirThornberry:
@calculon: mach bitte für solche Fragen ein eigenes Thema auf. Stelle dir vor du stellst eine Frage und andere posten neue Fragen in dem Thread so das deine eigentliche Frage völlig untergeht. Das ist einfach unfair gegenüber dem Fragesteller.
Okay.

Zum Thema. Hab' es mit den Tipps (mit Indy9) mal versucht:

Delphi-Quellcode:
function GoogleSuche(s : String): string;
begin
  result := 'http://www.google.de/search?hl=de&q=' + s + '&btnG=Suche&meta=';
end;

procedure TForm1.Button1Click(Sender: TObject);
var
str: string;
begin
  edit2.Text := GoogleSuche(edit1.Text);
  str := IDHTTP1.Get(edit2.Text);
  Delete(str, 1, Ansipos('Ergebnisse', str) - 1);
  str := copy(str, Ansipos('Ergebnisse', str), Ansipos(edit1.text, str)-Ansipos('Ergebnisse', str));
  str := StringReplace(str, '[b]', '', [rfReplaceAll]);
  str := StringReplace(str, '[/b]', '', [rfReplaceAll]);
  ShowMessage(str + edit1.Text);
end;
Das funktioniert zwar, aber nur für Suchbegriffe ohne Leerzeichen oder irgendwelchen Operatoren. Stimmt die GoogleSuche-Funktion denn 100%ig?

[edit]
Ok, so geht's:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
str, sav: string;
begin
  sav := edit1.Text;
  edit1.Text := trim(edit1.Text);
  edit1.Text := StringReplace(edit1.text, ' ','+', [rfReplaceAll]);
  edit2.Text := GoogleSuche(edit1.Text);
  str := IDHTTP1.Get(edit2.Text);
  Delete(str, 1, Ansipos('Ergebnisse', str) - 1);
  str := copy(str, Ansipos('Ergebnisse', str), Ansipos(sav, str)-Ansipos('Ergebnisse', str));
  str := StringReplace(str, '[b]', '', [rfReplaceAll]);
  str := StringReplace(str, '[/b]', '', [rfReplaceAll]);
  ShowMessage(str + sav);
end;
[/edit]

Gruß

Calculon
--
  Mit Zitat antworten Zitat