Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
HTML Code auslesen
roland76
myCSharp.de - Member



Dabei seit:
Beiträge: 11

Themenstarter:

HTML Code auslesen

beantworten | zitieren | melden

Hallo

Ich versuche mit einer kleinen Applikation den HTML-Code von Webseiten auszulesen. Habe dazu folgendes geschrieben.

       
 public string url;

        public string gethtml()
        {
            WebClient webclient = new WebClient();
            webclient.Headers[HttpRequestHeader.UserAgent] = "Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0";
            string htmlcode = webclient.DownloadString(url);

            return htmlcode;
        }

Nun habe ich jedoch das Problem, dass im angezeigten HTML-Code jeweils die Javascripts noch nicht ausgeführt wurde und dadurch einige Elemente fehlen. Gibt es eine Möglichkeit die url so aufzurufen, wie es ein Browser machen würde und erst dann den Quellcode runterzulanden?

Grüsse
Roland
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16234

beantworten | zitieren | melden

Wie in der Dokumentation einwandfrei zu lesen ist, sind webClient und webRequest nur Klassen, die das HTTP Protokoll unterstützen und keinen DOM manipulieren.
Brauchst Du sowas, dann musst Du Dir eine externe Bibliothek suchen, die das unterstützt oder - je nach Deiner Technologie - auch den in C# vorhandenen WebBrowser nutzen.

Verwendet man Google (zu erreichen über www.google.de) und führt eine simple Suche nach "webrequest javascript c#" oder "webclient javascript c#" aus, bekommt man das ganze auch auf den Präsentierteller gelegt.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
roland76
myCSharp.de - Member



Dabei seit:
Beiträge: 11

Themenstarter:

beantworten | zitieren | melden

Nein, über Google habe ich leider die entsprechenden Informationen nicht erhalten. Entschuldige meine Frage auf diesem tiefen Niveau und meine Unwissenheit zur Programmiersprache. Leider wurde mir das Wissen nicht mit dem Löffel eingetrichtert. Ein bischen weniger arrogant wäre doch manchmal auch schön.

Grüsse
Roland
private Nachricht | Beiträge des Benutzers
unconnected
myCSharp.de - Member

Avatar #avatar-3200.jpg


Dabei seit:
Beiträge: 862
Herkunft: Oerlinghausen/NRW

beantworten | zitieren | melden

Hmm, für so etwas gibt es hier klare Regeln. [Hinweis] Wie poste ich richtig?
private Nachricht | Beiträge des Benutzers
vbprogger
myCSharp.de - Experte

Avatar #avatar-1820.gif


Dabei seit:
Beiträge: 1723
Herkunft: NRW/DE

beantworten | zitieren | melden

Google

Grüße
Ich bin verantwortlich für das, was ich sage, nicht für das, was du verstehst.
---------
Bemerkung: ich beantworte keine Fragen via PM, denn das Forum soll ja was davon haben!
private Nachricht | Beiträge des Benutzers
roland76
myCSharp.de - Member



Dabei seit:
Beiträge: 11

Themenstarter:

beantworten | zitieren | melden

@vbprogger
Danke für den sinnvollen Beitrag. Aber wie geschrieben, Google kenne ich und habe ich auch benutzt.
private Nachricht | Beiträge des Benutzers
vbprogger
myCSharp.de - Experte

Avatar #avatar-1820.gif


Dabei seit:
Beiträge: 1723
Herkunft: NRW/DE

beantworten | zitieren | melden

Sorry aber mehr können wir dir hier nicht anbieten, denn ich sehe keine konkrete Probleme. Such dir also irgendeinen Tipp aus der Google-Suche raus, versuche umzusetzen, wenn du dann Probleme dabei hast dann kannst du wieder unter Beachtung der Regel [Hinweis] Wie poste ich richtig? deine Fragen stellen.

Grüße
Ich bin verantwortlich für das, was ich sage, nicht für das, was du verstehst.
---------
Bemerkung: ich beantworte keine Fragen via PM, denn das Forum soll ja was davon haben!
private Nachricht | Beiträge des Benutzers
weismat
myCSharp.de - Member



Dabei seit:
Beiträge: 878
Herkunft: Frankfurt am Main

beantworten | zitieren | melden

Andere Moeglichkeit ist mit COM Interop auf den IE zurueckzugreifen - es gibt viele Moeglichkeiten, was Du machen kannst...
private Nachricht | Beiträge des Benutzers
dN!3L
myCSharp.de - Experte

Avatar #avatar-2985.png


Dabei seit:
Beiträge: 3138

beantworten | zitieren | melden

Zitat von weismat
Andere Moeglichkeit ist mit COM Interop auf den IE zurueckzugreifen
Oder einfach das WebBrowser-Control verwenden.
private Nachricht | Beiträge des Benutzers