Laden...

Anfängerfrage: Webiste in eine XML Datei lesen

Erstellt von Ryoske vor 9 Jahren Letzter Beitrag vor 9 Jahren 1.154 Views
R
Ryoske Themenstarter:in
1 Beiträge seit 2015
vor 9 Jahren
Anfängerfrage: Webiste in eine XML Datei lesen

Hi,

bin neu hier und beschäftige mich seit einigen Wochen mit C#

Hab ein Problem und zwar will ich eine Konsolenanwendung schreiben was mit 2 Parametern aufgerufen werden soll:

  1.   URL einer Webseite  
    
  2.   Ein Beliebiges HTML-Tag  
    

Aufruf anwendung –url „URL“ –tag „HTML-Tag“
Dabei soll die Reihenfolge der Parameter egal sein.

Das Programm soll dann den Inhalt der Webseite in ein XML-Dokument lesen, deren URL eingegeben wurde. Dabei sollen fehlerhafte Webseiten (also, die die nicht in ein XML-Dokument zu laden sind) abgefangen werden.
Dann sollten per XPath-Satement alle angegebenen HTML-Tags gefunden und ihre Inhalte ausgegeben werden.

Da ich mich erst seit kurzem mit C# befasse fehlen mir jegliche Ideen wie ich das am besten anstelle 😦 ich hab schon Tage mit Google verbracht und damit meine Hefte zu durchwühlen aber ohne erfolg, ich hoffe hier kann mir jemand weiterhelfen und einige Tipps und Anregungen geben wie ich das am besten mache.

Danke schon mal für eure hilfe,

Ryo

5.657 Beiträge seit 2006
vor 9 Jahren

Hi Ryoske,

Da ich mich erst seit kurzem mit C# befasse fehlen mir jegliche Ideen wie ich das am besten anstelle

Du hast eine relativ komplexe Aufgabenstellung beschrieben, die sich in unterschiedliche Teilaufgaben zerlegen lassen würde:

  • Parsen von Kommandozeilenparametern
  • Einlesen von Textdateien
  • Parsen von HTML/XML-Dateien
  • Suchen von XML-Elementen
  • Ausgabe der Suchergebnisse in der Konsole

Das Prinzip dabei nennt sich "Teile und herrsche": Indem du dir schwierig zu lösende Probleme in mehrere einfach zu lösende Probleme aufteilst, beherrschst du auch das schwierige Problem. Zu jedem der genannten Punkte findest du dann bereits (mindestens) eine Lösung hier im Forum.

Christian

Weeks of programming can save you hours of planning

16.807 Beiträge seit 2008
vor 9 Jahren

Was soll das heissen, dass eine HTML-Datei in eine XML-Datei gelesen werden sollte?
Wenn Du eigentlich ausdrücken willst, dass Du eine HTML-Datei wie eine XML-Datei behandeln und darauf XPath jagen willst; dann muss man Dich hier leider enttäuschen.

HTML ist kein XML. XHTML kann wie ein XML gelesen.
Das gilt auch für HTML5.

Man braucht übrigens nur Sekunden, um mit Hilfe von Google (Google-Suche nach c# commandline parser) auf Bibliotheken zu treffen, die die Commandline-Aufrufe in Perfektion lesen und verarbeiten können.

R
317 Beiträge seit 2006
vor 9 Jahren

Mit dem HTML Agility Pack (http://htmlagilitypack.codeplex.com/) könnte man schon mal die "quasi" XPath-Query auf ne HTML-Seite durchführen. Funktioniert eigentlich relativ reibungslos, auch wenn natürlich die HTML-Seite kein XML ist...