2017-06-25 4 views
0

Ich versuche, den Quellcode der Google-Suche nach Bildseite zu bekommen. Die URL für die Suche nach Bild ist also https://www.images.google.com/searchbyimage?image_url=x x ist die Bild-URL.Kann nicht den richtigen Webseiten-Quellcode per URL erhalten - C#

Ich verwende diesen Code, aber der Quellcode, den ich bekomme, ist der Quellcode von Google images, nicht der Quellcode der spezifischen Suchergebnisseite.

public static string GetSourceCode(string url) 
{ 
    HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(url); 
    myRequest.Method = "GET"; 
    WebResponse myResponse = myRequest.GetResponse(); 
    StreamReader sr = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8); 
    string result = sr.ReadToEnd(); 
    sr.Close(); 
    myResponse.Close(); 

    return result; 
} 
+0

In der Tat müssen Sie Javascript ein wenig ausführen lassen, um den Quellcode der Seite zu erhalten, die beim Laden tatsächlich aussieht. Kein Experte für WebClient, aber ich habe einige Posts gesehen, die scheinbar JavaScript ausführen können. Ansonsten sollte in diesem Fall ein virtueller Browser oder etwas Selenium funktionieren. Der Browser würde sicherlich die Funktionalität haben, die nötig ist, um die Seite so zu rendern, wie sie es normalerweise macht, und Ihnen dann den Quellcode zur Verfügung zu stellen. –

Antwort

0

Wenn Sie eine Google-Suche ausführen, gibt Google nur ein wenig HTML (die Sie sehen, wenn Sie Ihr Ergebnis-String in einem Browser geöffnet). Das JavaScript wird in Ihrem Ergebnis ausgeführt, um die tatsächlichen Suchergebnisse zu laden.

Als eine Randnotiz, in Chrome (zumindest, das ist, wo ich es tatsächlich getestet habe) können Sie den JavaScript-Lauf sehen, wenn Sie einen Haltepunkt bei 'laden' setzen.

Verwandte Themen