Optionen für das HTML-Scraping? [geschlossen]

40 answers
  • Das Äquivalent der Ruby-Welt zu Beautiful Soup ist Hpricot / p>

    04 March 2014
    2 revs, 2 users 86%Joey deVilla
  • In der .NET-Welt empfehle ich das HTML Agility Pack. Nicht ganz so einfach wie einige der oben genannten Optionen (wie HTMLSQL), aber es ist sehr flexibel. Sie können schlecht geformtes HTML so manipulieren, als wäre es ein wohlgeformtes XML. Sie können also XPATH verwenden oder einfach über Knoten itereate.

    http://www.codeplex.com/htmlagilitypack

    07 August 2008
    Mike Ivanov
  • BeautifulSoup ist eine großartige Möglichkeit für das HTML-Scraping. In meinem letzten Job musste ich viel scrapen, und ich wünschte, ich wüsste schon zu Beginn von BeautifulSoup. Es ist wie das DOM mit viel mehr nützlichen Optionen und ist viel pythonischer. Wenn Sie Ruby ausprobieren möchten, portierten sie BeautifulSoup mit dem Namen RubyfulSoup, das jedoch seit einiger Zeit nicht aktualisiert wurde.

    Weitere nützliche Tools sind HTMLParser oder sgmllib.SGMLParser, die Bestandteil des Programms sind Standard-Python-Bibliothek. Diese funktionieren durch Aufruf von Methoden jedes Mal, wenn Sie ein Tag eingeben / beenden und HTML-Text finden. Sie sind wie Expat, wenn Sie damit vertraut sind. Diese Bibliotheken sind besonders nützlich, wenn Sie sehr große Dateien analysieren und das Erstellen einer DOM-Baumstruktur lang und teuer ist.

    Reguläre Ausdrücke sind nicht unbedingt erforderlich. BeautifulSoup verarbeitet reguläre Ausdrücke. Wenn Sie deren Leistung benötigen, können Sie sie dort einsetzen. Ich sage, dass Sie sich für BeautifulSoup entscheiden, es sei denn, Sie benötigen Geschwindigkeit und einen kleineren Speicherbedarf. Wenn Sie in Python einen besseren HTML-Parser finden, lassen Sie es mich wissen.

    07 August 2008
    Cristian
  • Ich habe festgestellt, dass HTMLSQL ein lächerlich einfacher Weg zu Screenscrape ist. Es dauert wörtlich Minuten, bis Ergebnisse erzielt werden.

    Die Abfragen sind sehr intuitiv - wie:

     SELECT title from img WHERE $class == 'userpic'
     

    Es gibt jetzt andere Alternativen, die den gleichen Ansatz verfolgen.

    07 August 2008
    deadprogrammer
  • Die Python-Bibliothek lxml fungiert als Pythonic-Bindung für die Bibliotheken libxml2 und libxslt. Ich mag besonders die XPath-Unterstützung und das hübsche Drucken der In-Memory-XML-Struktur. Es unterstützt auch das Analysieren von fehlerhaftem HTML. Ich glaube nicht, dass Sie andere Python-Bibliotheken / Bindungen finden können, die XML schneller als lxml analysieren.

    14 May 2012
    2 revsakaihola
  • Für Perl gibt es WWW :: Mechanize.

    06 August 2008
    andrewrk
  • 'Simple HTML DOM Parser' ist eine gute Option für PHP. Wenn Sie mit jQuery oder JavaScript-Selektoren vertraut sind, werden Sie sich wie zu Hause fühlen.

    Finden Sie es hier

    Hier gibt es auch einen Blogbeitrag dazu.

    31 July 2009
    Orange Box
  • Warum hat noch niemand JSOUP für Java erwähnt? http://jsoup.org/

    10 February 2012
    cookie_monster
  • Python bietet neben der "Wundersuppe" mehrere Optionen zum HTML-Scraping. Hier einige andere:

    • mechanisieren : ähnlich wie perl WWW:Mechanize. Gibt Ihnen ein Browserobjekt, das Sie mit Webseiten inerieren können.
    • lxml : Python-Bindung an libwww. Unterstützt verschiedene Optionen zum Durchsuchen und Auswählen von Elementen (z. B. XPath und CSS-Auswahl)
    • scrapemark : High-Level-Bibliothek mit Vorlagen zum Extrahieren von Informationen aus HTML.
    • pyquery : Ermöglicht das Erstellen von jQuery-Abfragen in XML-Dokumenten.
    • scrapy : ein hochstufiges Scraping- und Web-Crawling-Framework. Es kann verwendet werden, um Spider zu schreiben, für das Data Mining und für das Monitoring und automatisierte Testen
    24 June 2018
    3 revs, 3 users 67%filippo
  • Das Templatemaker von Adrian Holovaty (von Django (Ruhm) verwendet einen sehr interessanten Ansatz: Sie füttern Variationen derselben Seite und" lernt ", wo die" Löcher "für variable Daten liegen sind. Es ist nicht HTML-spezifisch und eignet sich daher gut für das Scraping von anderen Klartextinhalten. Ich habe es auch für PDFs und HTML verwendet, die in Klartext konvertiert wurden (mit pdftotext bzw. lynx).

    19 September 2008
    akaihola