Web-Scraping in Ziel C

8

Gibt es irgendeine Objective-C-Bibliothek zum Parsen von HTML, wie Pythons BeautifulSoup? Danke

    
pistacchio 03.05.2011, 16:23
quelle

2 Antworten

8

Von Apple gibt es NSXMLDocument und NSXMLParser , welche unterstützen aufgeräumt HTML-Eingabe. ( Baumbasierte XML-Programmierung )

Auf iOS (4.3) gibt es derzeit keine NSXMLDocument verfügbar, so dass Sie entweder NSXMLParser oder libxml2.2.

Weitere Informationen zu möglichen Problemen beim Parsen von fehlerhaftem HTML:
Was ist der beste Ansatz für die Analyse von XML / Screen Scraping in iOS? UIWebview oder NSXMLParser?

Die zuverlässigste Lösung besteht darin, ein Off-Screen-WebView zu verwenden, die HTML-Quelle in es zu laden und dann auf seine DOM-Struktur zuzugreifen .

    
Regexident 03.05.2011, 16:25
quelle
3

Der beste Weg, den ich gefunden habe, ist NSXMLParser + libtidy . Allerdings gibt es jetzt viele Bibliotheken von Drittanbietern, die das Parsen erleichtern. (Die letzte Antwort wurde 2011 geschrieben).

  • Googles Gumbo HTML5-Parser ist ziemlich gut. Es ist in reinem C99 geschrieben und Sie können es mit Objective C verwenden (verwenden Sie einen Wrapper wie dieses ).
  • Wenn Sie reine Objective-C-Bibliotheken haben möchten, Ono oder hpple sind gut. HTMLReader ist auch eine gute Alternative.
  • Wenn Swift Ihr Ding ist, könnten Sie NDHpple verwenden, das ein schneller Wrapper ist, der auf hpple basiert. Oder Sie könnten Swift-HTML-Parser verwenden. (Bonus: Alamofire ist so gut wie Python Requests und es ist eine Freude zu benutzen)
avi 04.03.2015 16:03
quelle

Tags und Links