AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Mit Delphi anzahl Treffer bei Google finden
Thema durchsuchen
Ansicht
Themen-Optionen

Mit Delphi anzahl Treffer bei Google finden

Ein Thema von Laufi · begonnen am 21. Sep 2007 · letzter Beitrag vom 22. Sep 2007
Antwort Antwort
Seite 1 von 2  1 2      
Laufi

Registriert seit: 21. Mär 2006
86 Beiträge
 
#1

Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 12:47
hallo!

wie kann man mit delphi bei Google eine Suchanfrage stellen und dann die anzahl Treffer berechnen?
Ich möchte also sowas wie eine function GetGoogleResultCount(Text: string). Internetverbindung habe ich bereits

Liebe Grüsse
Laufi
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#2

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 12:56
Zwei Möglichkeiten fallen mir ein:

1.) Indy HTTP Komponente (IdHTTP). Per POST oder GET die Suche an Google übertragen (richtige Parameter vorrausgesetzt) und den Inhalt der Seite dann auseinander nehmen. ("Ergebnisse 1 - 10 von ungefähr 115 für ...")

2.) TWebBrowser. Aber keinen Schimmer, wie man mit dem Ding das machen würde ... per .Navigate Google aufrufen, dann irgendwie das HTML daraus ziehen und dann das Ergebnis suchen.
  Mit Zitat antworten Zitat
tr909

Registriert seit: 5. Nov 2004
193 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 13:01
Such mal nach gethttp. Da wird beschrieben wie man eine html-Seite downloaden kann. Die url für google-Abfragen lautet
http://www.google.de/search?q=Suchwort

Dann musst du halt in dem Quellcode nach den Treffern suchen
Code:
<font size=-1>Ergebnisse [b]1[/b] - [b]10[/b] von ungefähr [b]912.000.000[/b] für [b]Suchwort[/b].
Aber bestimmt gibts da von google auch schon ne API für (guck mal da http://www.dsdt.info/tutorials/wsclient/?page=4)

Gruß
tr909
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 13:02
So kann man Google mit einer Suchanfrage aufrufen:
(Unit ShellAPI muss eingebunden werden!)

Delphi-Quellcode:
procedure GoogleSuche(s : String);
var adr : string;
begin
     adr := 'http://www.google.de/search?hl=de&q=' + s + '&btnG=Suche&meta=';
     ShellExecute(Application.Handle, 'open', PChar(adr), nil, nil, SW_ShowNormal);
end;
Wie man allerdings die Treffer ausliest, weiß ich leider nicht...

P@Tti

EDIT 1: Die Seite wird bei meinem Code allerdings in einem Browser geöffnet...
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Benutzerbild von calculon
calculon

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

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 13:17
So halt dann den String:

Delphi-Quellcode:
function GoogleSuche(s : String): string;
begin
  result := 'http://www.google.de/search?hl=de&q=' + s + '&btnG=Suche&meta=';
end;
Kleine Zwischenfrage, weiß jemand wie ich den String mit Parametern erstellen kann, für die Wikipedia-Suche? Also function WikipediaSuche?

Gruß

Calculon
--
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 13:20
evtl. so (ungetestet):

Delphi-Quellcode:
function WikipediaSuche(s : String): string;
begin
  result := 'http://de.wikipedia.org/wiki/Spezial:Search?ns0=1&search=' + s + '&fulltext=Suche';
end;
Sollte eigentlich klappen

P@Tti
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 13:24
@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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 13:35
Eine andere möglichkeit ist, das ganze mit SOAP zu machen. Google hat es zumindest mal angeboten und bei DSDT findest du ein Tutorial, hier: http://www.dsdt.info/tutorials/wsclient/
Einziger Haken: das ist auf glaube ich 1000 Anfragen pro Tag begrenzt.
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
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, 13: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
tr909

Registriert seit: 5. Nov 2004
193 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Mit Delphi anzahl Treffer bei Google finden

  Alt 21. Sep 2007, 14:06
Leer- und Sonderzeichen musst du kodieren. Leerzeichen z.B. muß bei google ein + werden

Gruß
tr909
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz