MyHTML ist ein schneller HTML-Parser, der Threads verwendet und als reine C99-Bibliothek ohne externe Abhängigkeiten implementiert ist.
Bitte verwenden Sie den HTML-Parser aus dem Lexbor-Projekt. Es ist stabil, hat mehr Funktionen und – ja – es ist sehr schnell.
Bitte beachten Sie die Datei CHANGELOG.md
X_USER_DEFINED, UTF_8, UTF_16LE, UTF_16BE, BIG5, EUC_KR, GB18030,
IBM866, ISO_8859_10, ISO_8859_13, ISO_8859_14, ISO_8859_15, ISO_8859_16, ISO_8859_2, ISO_8859_3,
ISO_8859_4, ISO_8859_5, ISO_8859_6, ISO_8859_7, ISO_8859_8, KOI8_R, KOI8_U, MACINTOSH,
WINDOWS_1250, WINDOWS_1251, WINDOWS_1252, WINDOWS_1253, WINDOWS_1254, WINDOWS_1255, WINDOWS_1256,
WINDOWS_1257, WINDOWS_1258, WINDOWS_874, X_MAC_CYRILLIC, ISO_2022_JP, GBK, SHIFT_JIS, EUC_JP, ISO_8859_8_I
Programm arbeitet in UTF-8 und gibt alles in UTF-8 zurück
Jetzt sind es UTF-8, UTF-16LE, UTF16BE und russisches Windows-1251, koi8-r, iso-8859-5, x-mac-kyrillisch, ibm866
Siehe INSTALL.md
Einführung
Keiner
Siehe Beispielverzeichnis
Einfaches Beispiel
#include
#include
#include
#include
int main ( int argc , const char * argv [])
{
char html [] = "HTML" ;
// basic init
myhtml_t * myhtml = myhtml_create ();
myhtml_init ( myhtml , MyHTML_OPTIONS_DEFAULT , 1 , 0 );
// first tree init
myhtml_tree_t * tree = myhtml_tree_create ();
myhtml_tree_init ( tree , myhtml );
// parse html
myhtml_parse ( tree , MyENCODING_UTF_8 , html , strlen ( html ));
// print result
// or see serialization function with callback: myhtml_serialization_tree_callback
mycore_string_raw_t str = { 0 };
myhtml_serialization_tree_buffer ( myhtml_tree_get_document ( tree ), & str );
printf ( "%sn" , str . data );
// release resources
mycore_string_raw_destroy ( & str , false);
myhtml_tree_destroy ( tree );
myhtml_destroy ( myhtml );
return 0 ;
}
Alexander Borisov [email protected]
Copyright (C) 2015-2018 Alexander Borisov
Bei dieser Bibliothek handelt es sich um freie Software. Sie können es unter den Bedingungen der GNU Lesser General Public License, wie von der Free Software Foundation veröffentlicht, weiterverbreiten und/oder ändern; entweder Version 2.1 der Lizenz oder (nach Ihrer Wahl) eine spätere Version.
Diese Bibliothek wird in der Hoffnung verteilt, dass sie nützlich sein wird, jedoch OHNE JEGLICHE GARANTIE; ohne die stillschweigende Garantie der MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Weitere Einzelheiten finden Sie in der GNU Lesser General Public License.
Sie sollten zusammen mit dieser Bibliothek eine Kopie der GNU Lesser General Public License erhalten haben; Wenn nicht, schreiben Sie an die Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Siehe die LICENSE-Datei.