Wie parse ich eine HTML-Seite mit Node.js

Ich muss (Server-Seite) große Mengen von HTML-Seiten analysieren.
Wir sind uns einig, dass Regexp nicht der richtige Weg ist.
Es scheint mir, dass Javascript die native Methode zum Parsen einer HTML-Seite ist, aber diese Annahme beruht auf dem serverseitigen Code mit der gesamten DOM-Fähigkeit, die JavaScript in einem Browser hat.

Hat Node.js diese Fähigkeit eingebaut?
Gibt es einen besseren Ansatz für dieses Problem, HTML auf der Serverseite zu analysieren?

    Verwenden Sie Cheerio . Es ist nicht so streng wie jsdom und ist für das Scraping optimiert. Als Bonus werden die jQuery-Selektoren verwendet, die Sie bereits kennen.

    ❤ Vertraute Syntax: Cheerio implementiert eine Teilmenge von Core jQuery. Cheerio entfernt alle DOM-Inkonsistenzen und Browsererrors aus der jQuery-Bibliothek und deckt damit seine wirklich großartige API auf.

    ϟ flashschnell: Cheerio arbeitet mit einem sehr einfachen, konsistenten DOM-Modell. Als Ergebnis sind das Parsen, Manipulieren und Rendern unglaublich effizient. Vorläufige End-to-End-Benchmarks deuten darauf hin, dass cheerio etwa 8x schneller ist als JSDOM.

    ❁ Wahnsinnig flexibel: Cheerio umschließt @ FB55’s verzeihenden htmlparser. Cheerio kann fast jedes HTML- oder XML-Dokument parsen.

    Verwenden Sie htmlparser2 , seine Art schneller und ziemlich einfach. Konsultieren Sie dieses Anwendungsbeispiel:

    https://www.npmjs.org/package/htmlparser2#usage

    Und die Live-Demo hier:

    http://demos.forbeslindesay.de/htmlparser2/

    Htmlparser2 von FB55 scheint eine gute Alternative zu sein.

    jsdom ist zu streng, um irgendwelche screen scraping Dinge zu machen, aber beautifulsoup erstickt nicht an schlechtem Markup.

    Node-Soupselect ist ein Port von Pythons BeautifulSoup in NodeJs, und es funktioniert wunderbar

    In .NET gibt es das HTML Agility Pack , eine äußerst solide HTML-Parsing-Bibliothek.