Avatar billede jps6kb Novice
30. september 2009 - 11:01 Der er 10 kommentarer og
1 løsning

Google Search i Winform

Hey,

Jeg gi'r op. Hvordan laver jeg en google-søgning i en winform så jeg får title, description og link tilbage?
Går ud fra jeg kan bruge Google API på én eller anden måde? :)
Avatar billede Slettet bruger
30. september 2009 - 12:07 #1
Avatar billede jps6kb Novice
30. september 2009 - 12:15 #2
Umiddelbart ser det ikke ud til at være det jeg søger desværre.
Jeg har fået hul igennem til det nu, men mangler bare at kunne angive sprog. Altså, om jeg vil have søgeresultater på dansk eller engelsk (google.dk / google.com)

Any ideas?

Kode:

GBaseService service = new GBaseService(appName, appCode);
GBaseQuery query = new GBaseQuery(GBaseUriFactory.Default.SnippetsFeedUri);
query.GoogleBaseQuery = txtSearchTerm.Text;
query.NumberToRetrieve = Convert.ToInt32(txtResults.Text);

GBaseFeed feed = service.Query(query);
Avatar billede Slettet bruger
30. september 2009 - 12:25 #3
Nu skriver du ikke hvordan du har lavet det.
Men kan du ikke lave de muligheder der skal være for valg af sprog i en hashtable eller lignende collection og så hente det derfra ud fra brugerens valg?

HashTable ht_Language = New HashTable();
ht_Language.Add("DK", "google.dk")
ht_Language.Add("US", "google.com")

Eller lidt raffinaret ved at landekoden bare appendes til google-domænenavnet og du opbygger en dynamisk url til søgningen.
Avatar billede jps6kb Novice
30. september 2009 - 12:31 #4
Koden jeg har vedhæftet henter resultaterne fra google.com, som er standard.
Jeg skal bare have luret, hvordan jeg sætter sprog på min query.
Avatar billede jps6kb Novice
30. september 2009 - 12:32 #5
Du kan se resten her, ikke at det har noget med det andet at gøre.

GBaseFeed feed = service.Query(query);

foreach (GBaseEntry entry in feed.Entries)
{
    richTextBox1.Text += "TITLE: " + entry.Title.Text +
    "\nSUMMARY: " + entry.Content.Content +
    "\nURI: " + entry.AlternateUri.ToString() + "\n\n";
}
Avatar billede Slettet bruger
30. september 2009 - 12:51 #6
Er det ikke 'bare' at udskifte hl=en med hl=da?

De to uri'er herunder er søgninger på henholdsvis google.com og google.dk på søgeordet test

http://www.google.dk/#hl=da&source=hp&q=test&btnG=Google-s%C3%B8gning&meta=&aq=f&oq=test&fp=1ff0b16f77625d09

http://www.google.com/#hl=en&source=hp&q=test&aq=f&aqi=g10&oq=&fp=ac72bcecad7dd685

Jeg går ud fra at du på én eller anden måde opbygger din URI i programmet ud fra nogle valg fra brugeren og her kunne du så gøre værdien af hl til en variabel.
Avatar billede jps6kb Novice
30. september 2009 - 12:58 #7
Nej, det gør jeg nemlig ikke.
Det kode er det eneste der er.
Avatar billede Slettet bruger
30. september 2009 - 13:11 #8
Ok. Hvordan skal det virke sådan mere konkret?

Jeg har ikke selv forsøgt at lave noget lignende så jeg er lidt på bar bund, men sådan som jeg kunne forestille mig at det kunne laves:

1. Bruger skriver en række ord til en søgning i et tekstfelt.

2. Bruger vælger evt. sprog fra en dropdown liste. Default - hvis intet valgt er fx. EN og der søges på google.com.

3. Når bruger klikker 'search' opbygges en dynamisk url (søgestreng) med henholdsvis hl, der sættes til landekoden der er valgt eller default til EN. Selve søgeordene indsættes i den dynamiske søgestreng og der laves et kald til googles API.

Hvordan det konkrete svar modtages tilbage ved jeg så ikke. Er heller ikke sikker på hvordan den konkrete søgestreng sendes afsted til google.xxx

Men jeg fandt lige et link til en beskrivelse af det du forsøger at lave http://code.google.com/apis/base/docs/2.0/developers_guide_dotnet.html#query
Avatar billede bvli Praktikant
30. september 2009 - 15:11 #9
Mon ikke du kunne prøve hl=en, som beskrevet tidligere og smide dem ind her?

http://google-gdata.googlecode.com/svn/docs/folder15/P_Google_GData_Client_FeedQuery_ExtraParameters.htm
Avatar billede jps6kb Novice
30. september 2009 - 18:57 #10
Jo, den nåede jeg også frem til, men desværre uden held. :/
Avatar billede jps6kb Novice
22. november 2010 - 17:11 #11
x
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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