MyHTML — это быстрый анализатор HTML, использующий потоки, реализованный как чистая библиотека C99 без внешних зависимостей.
Пожалуйста, используйте парсер HTML из проекта Lexbor. Он стабилен, имеет больше возможностей и — да — очень быстрый.
Пожалуйста, посмотрите файл 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
Программа работает в UTF-8 и возвращает все в UTF-8.
Теперь это UTF-8, UTF-16LE, UTF16BE и русские windows-1251, koi8-r, iso-8859-5, x-mac-cyrillic, ibm866.
См. INSTALL.md
Введение
Никто
Посмотреть каталог примеров
Простой пример
#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 ;
}
Александр Борисов [email protected]
Copyright (C) 2015-2018 Александр Борисов
Эта библиотека является свободным программным обеспечением; вы можете распространять его и/или изменять в соответствии с условиями Lesser General Public License GNU, опубликованной Фондом свободного программного обеспечения; либо версия 2.1 Лицензии, либо (по вашему выбору) любая более поздняя версия.
Данная библиотека распространяется в надежде, что она будет полезна, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии ТОРГОВОЙ ПРИГОДНОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. Дополнительную информацию см. в GNU Lesser General Public License.
Вместе с этой библиотекой вы должны были получить копию GNU Lesser General Public License; если нет, напишите в Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
См. файл ЛИЦЕНЗИИ.