#include <stdio.h>
#include <streamhtmlparser/htmlparser.h>
int main(void)
{
unsigned int getchar_ret
htmlparser_ctx *parser = htmlparser_new()
while ((getchar_ret = getchar()) != EOF) {
char c = (char)getchar_ret
/* If we received a '$' character, we output the current tag and attribute
* * name to stdout. */
if (c == '$') {
printf("[[ ")
if (htmlparser_tag(parser))printf("tag=%s ", htmlparser_tag(parser))
if (htmlparser_attr(parser)) printf("attr=%s ", htmlparser_attr(parser))
printf("]]")
/* If we read any other character, we pass it to the parser and echo it to
* * stdout. */
} else {
htmlparser_parse_chr(parser, c)
putchar(c)
}
}
}
如果非要用c 写的话, 建议用neon库,可以极大减少工作量,如果是在socket层面编成的话,会非常累。html文本解析就用libxml2库中的html parser即可。
如果没有语言要求,建议用python非常简单。我前段时间花了两天,写了个抓爬flickr信息的东西,然后写进数据库。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)