HTML-Agilitätspaket-Korrektur
  • Liste bestellen
  • .net c# html html-agility-pack

    Frage

    Ich habe versucht, HTML Agility Pack zu verwenden, um HTML in gültiges XHTML zu analysieren, um in eine größere XML-Datei zu gelangen. Dies funktioniert zum größten Teil aber die Listen werden wie folgt formatiert:

    <ul>
        <li>item1
        <li>item2
        </li></li>
    </ul>
    

    Im Gegensatz zu dem, was ich erwarten würde:

    <ul>
        <li>item1</li>
        <li>item2</li>
    </ul>
    

    Leider übergibt dieses Format mit verschachtelten li-Tags nicht die Schema-Validierung, über die ich keine Kontrolle habe. Kennt jemand eine einfache Möglichkeit, dies entweder durch das HTML Agility Pack oder eine Alternative zu korrigieren. Vorzugsweise in .NET.

    Akzeptierte Antwort

    Ich fand eine Alternative zum Agility-Paket namens HTML Tidy http://tidy.sourceforge.net/ Ich benutzte tatsächlich den .NET-Port namens Tidy.NET http://sourceforge.net/projects/tidynet/ das schien mein Problem zu beheben .


    Beliebte Antwort

    Ich habe dein Questio auch auf anderen Seiten gefunden. Der HTML-Code, den Sie analysieren möchten, lautet:

    <UL>
    <LI>NVQ Level 3 in Fabrication and Welding Engineering
    <LI>Level 3 Certificate in Engineering
    <LI>Level&nbsp;2 Key Skill in Application of Number
    <LI>Level&nbsp;2 Key Skill in Communication
    <LI>Level&nbsp;2 Key Skill in Information Technology
    <LI>Level 2 Key Skill in Working with Others
    <LI>Level 2 Key Skill in Improving Own Learning &amp; Performance</LI></UL>
    

    Was ich bemerke ist, dass das erste <li> Elternteil zu den anderen <li>'s . Ein Ansatz, den ich dabei nehmen würde, ist das erste <li> und den Text (es ist ein TextNode für HAP), die anderen <li> -Kinder zu speichern und die untergeordneten Elemente zu entfernen (während sie formatiert werden) nach dem übergeordneten Knoten.
    Möglicherweise müssen Sie den rekursiven Weg einschlagen. Hier ist ein Blick auf meine Lösung für eine HTML Sanitizer-Klasse: HTML Agility Pack strip-Tags NICHT in der Whitelist




    Lizenziert unter: CC-BY-SA with attribution
    Nicht verbunden mit Stack Overflow
    Ist diese KB legal? Ja, lerne warum
    Lizenziert unter: CC-BY-SA with attribution
    Nicht verbunden mit Stack Overflow
    Ist diese KB legal? Ja, lerne warum