# gumbo_src **Repository Path**: slcode/gumbo_src ## Basic Information - **Project Name**: gumbo_src - **Description**: 【lib】以js dom风格的C/C++解析html - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2016-06-08 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #gumbo_src ## 简介 简单的封装,主要用于习惯使用JS dom操作的童鞋们 可以应用于MAC、Linux、Windows。因为就是使用纯C写的,自然都可以使用。 ## 使用 直接把整个文件拷进去即可使用,如果想用动态库那么就编译安装(编译安装请搜索Google官方的Gumbo),直接使用:包含gumbo_ext.h/cpp即可 ``` #include #include "gumbo_ext.h" #define MY_HTML " \ \
\
好的呢
\
192.168.1.119
\
3e:4f:2c:8a:89
\ \ \ " int main(int argc, char *argv[]) { std::string html = MY_HTML; //**************************************************************** //使用前最好替换一些不需要的字符,如果 空格转义符号,没有什么影响最好替换掉 html.replace("\n",""); html.replace("\t",""); html.replace("\r",""); html.replace(" ",""); //**************************************************************** GumboOutput * output = gumbo_parse(html.c_str()); /* 解析 */ if(!output) return -1; GumboNode * document = output->root; GumboNodeList list = getElementsByTagName(document,"dd"); GumboNode * id = getElementById(document,"hanzi"); std::cout << getInnerText(id); //继续使用其他方法... gumbo_destroy_output(&kGumboDefaultOptions,output); /* 释放资源 */ return 0; } ```