libtidy是乙個開源的用來診斷,分析,生成html文件的乙個庫
下面的例子是使用libtidy獲取頁面鏈結的例子
**如下:
#ifndef parsepage_hpp
#define
parfspage_hpp
#include
<
string
>
#include
<
vector
>
#include
<
tidy
/buffio.h
>
#include
<
tidy
/fileio.h
>
#include
<
tidy
/tidy.h
>
#include
<
tidy
/tidyenum.h
>
#include
<
tidy
/platform.h
>
//! 解析html頁面
class
parsepage
~parsepage()
public://
! 解析給定檔案
bool
loadfile(
const
char
*file)
//!解析給定記憶體
bool
loadbuffer(
const
char
*buffer)
//! 內容解析
void
check()
//! 獲取鏈結
intgetlinknumber()
const
std::
string
getlinkbyindex(
intindex)
private
:void
dohref(tidyattr attr);
void
checkhref(tidynode node);
private
:tidydoc doc;
tidynode root;
std::
string
cur;
intrank;
string links;
};#endif
//! ccsdu2004
實現:#include
<
boost
/algorithm
/string
.hpp
>
#include
"parsepage.hpp
"void
parsepage::dohref(tidyattr attr)
//! 鏈結位址
else
}else
links.push_back(href);}}
void
parsepage::checkhref(tidynode node)
checkhref(child);}}
這個物件比較簡單
呼叫check之後所有的頁面鏈結在links中
使用HtmlParser解析HTML
如果要對html進行解析,提取html的資料或者修改html資料,htmlparser是乙個不錯的選擇.使用htmlparser可以解析本地和網路上的html資料 parser parser new parser new winista.text.htmlparser.http.httpprotoc...
使用HtmlParser解析HTML
如果要對html進行解析,提取html的資料或者修改html資料,htmlparser是乙個不錯的選擇.使用htmlparser可以解析本地和網路上的html資料 parser parser new parser new winista.text.htmlparser.lex.lexer new w...
使用TFHpple解析html
使用tfhpple解析html 前期準備工作 引入靜態庫檔案 新增庫檔案的 header search paths 注意,必須選中 all 準備工作結束 使用詳情 我們來解析 中的title標籤哦.思路是這樣子的 1.將網頁轉換成nsdata 2.按照標籤值在nsdata中資料進行查詢 3.檢索出想...