Announcement

Collapse
No announcement yet.

Google-Position für Suchbegriff in Verbindung mit Webseite ermitteln

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Google-Position für Suchbegriff in Verbindung mit Webseite ermitteln

    Hallo,

    ich habe z. B. die Webseite http://www.barrierefrei-mobil.info/ und möchte jetzt mit c# abfragen auf welcher Google-Position die Webseite beim Suchbegriff "Behindertenparkplätze" ist.

    Weiss jemand wie man das Programmieren kann?
    Herzliche Grüße

    Markus Lemcke
    barrierefreies Webdesign

  • #2
    Hallo Markus,

    suche mal nach PageRank, da solltest du was finden.

    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Hi Gü,

      habe das hier gefunden:
      http://entwickler-forum.de/showthrea...light=pagerank

      weiss aber nicht wie das helfen soll?
      Herzliche Grüße

      Markus Lemcke
      barrierefreies Webdesign

      Comment


      • #4
        Mittels Google-Suche nach C# pagerange check findet man z.B. dieses Beispiel

        Comment


        • #5
          er meinte bestimmt auch nicht nur zwangsläufig hier im Forum, sondern z.B. auch auf google oder ähnlichem

          Sowas zum Beispiel... dann findet man sowas

          anscheinend gibt es keine direkt API/Webservice. Es kursieren aber wohl diverse Skripts im Internet. Da müsste man sich wohl etwas tiefer hineinfieseln je nachdem was man haben will. Was wäre denn das Ziel?

          Comment


          • #6
            irgendwie scheint ein missverständnis vorzulegen. Entweder ich habe mich extrem schlecht ausgedrückt oder ich habe was über sehen.

            Meine eigentliche Frage war diese:
            ich habe z. B. die Webseite http://www.barrierefrei-mobil.info/ und möchte jetzt mit c# abfragen auf welcher Google-Position die Webseite beim Suchbegriff "Behindertenparkplätze" ist.
            es ging also nicht um den pagerank, sondern um die Google-Position!
            Herzliche Grüße

            Markus Lemcke
            barrierefreies Webdesign

            Comment


            • #7
              Dann rufe die google-Suche auf und analysiere die Ergebnisseiten
              Christian

              Comment


              • #8
                okay, ich habe es kapiert


                das ist der code
                Code:
                public static int GetPosition(Uri url, string searchTerm)
                        {   string raw = "http://www.google.com/search?num=39&q={0}&btnG=Search";
                            string search = string.Format(raw, HttpUtility.UrlEncode(searchTerm));
                            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(search);
                            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
                            {
                                using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.ASCII))
                                {
                                    string html = reader.ReadToEnd();
                                    return FindPosition(html, url);
                                }
                            }
                        }
                
                
                        private static int FindPosition(string html, Uri url)
                        {
                            string lookup = "(<h2 class=r><a href=\")(\\w+[a-zA-Z0-9.-?=/]*)";
                            MatchCollection matches = Regex.Matches(html, lookup);
                            for (int i = 0; i < matches.Count; i++)
                            {
                                string match = matches[i].Groups[2].Value;
                                if (match.Contains(url.Host)) return i + 1;
                            }
                            return 0;
                        }
                die gute nachricht ist er compiliert!
                Die schlechte nachricht ist es kommt immer null raus!

                wenn ich das ding so aufrufe:
                Code:
                 private void btnGooglePos_Click(object sender, EventArgs e)
                        {
                            Uri url = new Uri("http://www.barrierefrei-mobil.info");
                            int VGooglePos = GetPosition(url, "barrierefreie gaststätte");
                            lblGooglePos.Text = VGooglePos.ToString();
                        }

                müsste google-pos 1 raus kommen.
                mache ich was falsch?
                Herzliche Grüße

                Markus Lemcke
                barrierefreies Webdesign

                Comment


                • #9
                  mache ich was falsch?
                  Offenbar

                  schon mal debuggt?

                  Was soll der reguläre Ausdruck bewirken?

                  Es wird ein Text gesucht, der mit dem Tag h2 beginnt, der Klasse, von einem href gefolgt. Dann ein Wortzeichen mindestens eins, dann weitere Zeichen (u.a. Wortzeichen) beliebig viele. Zumindestens der letzte Teil ist sinnlos. Was könnte das erste geforderte Wortzeichen sein? Wenn du das Protokoll willst, dann kannst du es auch hinschreiben "http://".

                  Dann wird die zweite Grupppierung durchsucht. Wenn die erste keine Rolle spielt, wozu ist sie den da?

                  Bei mir werden die Suchergebnisse von google in einem h3-Tag dargestellt. Dann kommt nach der Klasse "r" eine weitere Klasse "l" gefolgt von Javascript. Unabhängig von weiteren HTML-Inhalt zwischen den Klassen und dem href sind hier Leerzeichen und Zeilenumbrüche zwischen den Tags enthalten, die dein Ausdruck nicht berücksichtigt
                  Dein Ausdruck dürfte also fehlschlagen.

                  Da der HTML-Inhalt je nach Browser, Gerät u.a. anders sein könnte, ist es wenig zielführend auf diese Art und Weise eine Webseite zu durchsuchen.

                  Es empfiehlt sich einen HTML-Parser einzusetzen. Damit ist so etwas gemeint, wie es hier für Java (Jericho) gibt

                  http://www.google.de/search?q=%22c%23%22+html+parser&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:defficial&client=firefox-a&safe=images

                  ..oder du erweiterst deinen Ausdruck erheblich
                  Zuletzt editiert von Christian Marquardt; 01.09.2011, 06:57. Reason: Rechtschreibung
                  Christian

                  Comment

                  Working...
                  X