Προς το περιεχόμενο

Πως θα κατεβασω εικονες απο το Google ?


Evgenios1

Προτεινόμενες αναρτήσεις

Δημοσ.

Φτιαχω ενα προγραμματακι το οποιο μου προβαλει εικονες απο το Local file και απο το Flickr.com . Μεχρη εδω καλα ,αλλα τωρα θελο να προβαλει και απο Google

για το Flikcr εχω κανει αυτο :

 

> public  class Flickr:INet
  {
      #region INet Members

      public string[] GetImages(string Search)
      {

         return DownloadAndReadPage(Search);
      
      }

      #endregion
      
     
      
      public Flickr()
      {
      }
      
      private string[] DownloadAndReadPage(string searchFor)
      {
          string[] temp=new string[200];
          int x = 0;
          try
          {
              HttpWebRequest Req = (HttpWebRequest)WebRequest.Create(@"http://www.flickr.com/search/?q=" + searchFor);
              HttpWebResponse Res = (HttpWebResponse)Req.GetResponse();
              StreamReader eFile = new StreamReader(Res.GetResponseStream());//download stream
              string httpPage = eFile.ReadToEnd();//save stream in a string
              MatchCollection httpPageReadyToSherching =
                  Regex.Matches(httpPage, @"<img(.*)/>",
                  RegexOptions.Multiline |
                  RegexOptions.IgnorePatternWhitespace | 
                  RegexOptions.ExplicitCapture);
              foreach (Match m in httpPageReadyToSherching)
              {
                  if (m.ToString().Contains("farm"))
                  {
                      MatchCollection uM =
                          Regex.Matches(m.ToString(), @"http://(.*)jpg",
                          RegexOptions.Multiline |
                          RegexOptions.IgnorePatternWhitespace |
                          RegexOptions.ExplicitCapture);
                      foreach (Match m1 in uM)
                      {
                          temp[x] = m1.ToString();
                          x++;
                      }
                  }
              }


          }
          catch (Exception)
          {
              System.Windows.Forms.MessageBox.Show("No internet");
          }
          string[] temp1 = new string[x + 1];
          x = 0;
          for (; x < temp1.Length; x++)
          {

              temp1[x] = temp[x];
          }
           
          
          return temp1;

      }

 

 

Αλλα για το google δε ξερω πως να βρω την url για τη full size image και με τον παραπανο τροπο δε γινετε γιατι μου βγαζει τοις εικονες 100χ100

Δημοσ.

Δεν ξέρω ακριβώς τον κώδικα ούτε έκατσα να τον δω και πολύ. Πάντως εάν δεις κάποιες φωτογραφίες στο google θα δεις σε τι μορφή βρίσκεται η διεύθυνση του thumbnail και της πραγματικής εικόνας.

 

Π.χ. μία αναζήτηση που έκανα για το όνομα "Madonna" έβγαλε τις φωτογραφίες σε thumbnail και επέλεξα μία από αυτές. Η μικρή φωτογραφία είναι το πρώτο κλικ και η μεγάλη φωτογραφία είναι όταν πάτησα "Δες την φωτογραφία σε κανονικό μέγεθος"

 

http://images.google.gr/imgres?imgurl='>http://images.google.gr/imgres?imgurl='>http://images.google.gr/imgres?imgurl=http: //teamsugar.com/files/images/29982_Madonna_and_family_at_New_York_City_03.preview_0.jpg&imgrefurl=http://popsugar.com/8171&h=800&w=478&sz=64&hl=el&start=16&usg=__4XkNN9EdonRx3eUj-W6yjmsSlb4=&tbnid=2zz2mhQ5x7n_JM:&tbnh=143&tbnw=85&prev=/images%3Fq%3Dmadonna%26gbv%3D2%26hl%3Del%26sa%3DG

 

http://teamsugar.com/files/images/29982_Madonna_and_family_at_New_York_City_03.preview_0.jpg'>http://teamsugar.com/files/images/29982_Madonna_and_family_at_New_York_City_03.preview_0.jpg

 

Μία άλλη εικόνα (είδα αρκετές για να δω εάν ο κώδικας επαληθεύεται) είναι η εξής:

 

http://images.google.gr/imgres?imgurl=http: //kazani.gr/uploads/posts/thumbs/1185204592_madonna_21_1.jpg&imgrefurl=http://kazani.gr/2007/07/24/madonna_21_years_old.html&h=429&w=480&sz=33&hl=el&start=27&usg=__3E8CssXXPd2X37n-AnVLpLa63EU=&tbnid=_W5apGPQr8pq0M:&tbnh=115&tbnw=129&prev=/images%3Fq%3Dmadonna%26start%3D20%26gbv%3D2%26ndsp%3D20%26hl%3Del%26sa%3DN

 

http://kazani.gr/uploads/posts/thumbs/1185204592_madonna_21_1.jpg

 

Όπως βλέπεις η διεύθυνση της πραγματικής εικόνας είναι εμφολευμένη μέσα στη διεύθυνση του thumbnail. Επομένως και χωρίς φυσικά να γράψω κώδικα θα πρέπει να κάνεις εξαγωγή του Link για την κανονική εικόνα από το thumbnail.

 

Ο κώδικας αυτός υπάρχει πάντα στην αρχή:

http://images.google.gr/imgres?imgurl=

....χμμμμμ, εδώ έχει images.google.gr λογικά εάν γίνει η αναζήτηση απο το google.com τότε θα βγάζει άλλη διεύθυνση.

 

ακολουθεί το link της κανονικής εικόνας σε πραγματικό μέγεθος: (π.χ.)

http://teamsugar.com/files/images/29982_Madonna_and_family_at_New_York_City_03.preview_0.jpg

...εδώ το link της εικόνας τελειώνει στον τύπο της εικόνας, που στην προκειμένη περίπτωση είναι .jpg. Ένας ωραίος επίσης τρόπος να βρίσκεις το τέλος του Link είναι να κάνεις αναγνώριση προτύπων των εικόνων που υποστηρίζει η εφαρμογή σου. Δηλαδή αμέσως μετά το πρότυπο, το Link της εικόνας τελειώνει σε .jpg& / .gif& / .bmp& κτλ.

 

και μετά ακολουθεί link το οποίο προφανώς δεν σε ενδιαφέρει για την εφαρμογή σου.

 

Υ.Γ.>

Συγνώμη εάν κατάλαβα λάθος για την ερώτηση και έδωσα εντελώς άκυρη απάντηση, είμαι καινούργιος στο forum.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...