HttpClient抓取網(wǎng)頁的兩種方式
更新時間:2013年08月23日 17:11:46 作者:
可以利用NodeFilter對網(wǎng)頁進行分析及利用Visitor對網(wǎng)頁進行分析實現(xiàn)抓取網(wǎng)頁,具體如下感興趣的朋友可以參考下,希望對大家有所幫助
一、利用NodeFilter對網(wǎng)頁進行分析
1、生成一個Parser
a.通過url提取網(wǎng)絡(luò)上的網(wǎng)頁
Parser parser = new Parser();
parser.setURL("http://www.yahoo.com.cn");
b.提取本地網(wǎng)頁文件
通過讀文件把網(wǎng)頁文件轉(zhuǎn)化成字符串;
Parser parser=Parser.createParser(html,charset);
2、利用NodeFilter做一個filter
a.利用Tag Name
NodeFilter filter=new TagNameFilter("IMG");
b.利用Tag Class
NodeFilter filter = new NodeClassFilter(ImageTag.class);
3、通過匹配filter,得到所有符合條件的Tag
NodeList list=parser.extractAllNodesThat(filter);
for(int i=0;i String content=list.elementAt(i).toHtml();//得到符合條件的Tag 內(nèi)容
如果針對具體情況進行更加詳細的處理,則:
ImageTag imageTag=(ImageTag)list.elementAt(i);
…………
}
然后根據(jù)需要做相應(yīng)的處理。
二、利用Visitor對網(wǎng)頁進行分析
1、生成一個Parser
a.通過url提取網(wǎng)絡(luò)上的網(wǎng)頁
Parser parser = new Parser();
parser.setURL("http://www.yahoo.com.cn");
b.提取本地網(wǎng)頁文件
通過讀文件把網(wǎng)頁文件轉(zhuǎn)化成字符串;
Parser parser=Parser.createParser(html,charset);
2、用visitor訪問頁面
ex:ObjectFindingVisitor visitor=new ObjectFindingVisitor();
parser.visitAllNodesWith(visitor);
3、通過特定的visitor得到符合條件的Tag
Node[] nodes=visitor.getTags();
for(int i=0;i ImageTag imageTag=(ImageTag)nodes[i];
…………
//根據(jù)需要做特定處理
}
1、生成一個Parser
a.通過url提取網(wǎng)絡(luò)上的網(wǎng)頁
復(fù)制代碼 代碼如下:
Parser parser = new Parser();
parser.setURL("http://www.yahoo.com.cn");
b.提取本地網(wǎng)頁文件
通過讀文件把網(wǎng)頁文件轉(zhuǎn)化成字符串;
復(fù)制代碼 代碼如下:
Parser parser=Parser.createParser(html,charset);
2、利用NodeFilter做一個filter
a.利用Tag Name
NodeFilter filter=new TagNameFilter("IMG");
b.利用Tag Class
NodeFilter filter = new NodeClassFilter(ImageTag.class);
3、通過匹配filter,得到所有符合條件的Tag
NodeList list=parser.extractAllNodesThat(filter);
for(int i=0;i String content=list.elementAt(i).toHtml();//得到符合條件的Tag 內(nèi)容
如果針對具體情況進行更加詳細的處理,則:
復(fù)制代碼 代碼如下:
ImageTag imageTag=(ImageTag)list.elementAt(i);
…………
}
然后根據(jù)需要做相應(yīng)的處理。
二、利用Visitor對網(wǎng)頁進行分析
1、生成一個Parser
a.通過url提取網(wǎng)絡(luò)上的網(wǎng)頁
復(fù)制代碼 代碼如下:
Parser parser = new Parser();
parser.setURL("http://www.yahoo.com.cn");
b.提取本地網(wǎng)頁文件
通過讀文件把網(wǎng)頁文件轉(zhuǎn)化成字符串;
復(fù)制代碼 代碼如下:
Parser parser=Parser.createParser(html,charset);
2、用visitor訪問頁面
復(fù)制代碼 代碼如下:
ex:ObjectFindingVisitor visitor=new ObjectFindingVisitor();
parser.visitAllNodesWith(visitor);
3、通過特定的visitor得到符合條件的Tag
復(fù)制代碼 代碼如下:
Node[] nodes=visitor.getTags();
for(int i=0;i ImageTag imageTag=(ImageTag)nodes[i];
…………
//根據(jù)需要做特定處理
}
您可能感興趣的文章:
- 使用httpclient實現(xiàn)免費的google翻譯api
- httpclient模擬登陸具體實現(xiàn)(使用js設(shè)置cookie)
- Android 中HttpURLConnection與HttpClient使用的簡單實例
- Android下通過httpClient發(fā)送GET和POST請求的實例代碼
- 探討:使用httpClient在客戶端與服務(wù)器端傳輸對象參數(shù)的詳解
- Android HttpClient GET或者POST請求基本使用方法
- C# HttpClient Cookie驗證解決方法
- AndroidHttpClient使用Cookie應(yīng)用分析
- ASP.NET MVC Web API HttpClient簡介
- httpclient重定向之后獲取網(wǎng)址信息示例
相關(guān)文章
微軟IE Developer Toolbar安裝使用簡要圖文說明
微軟IE Developer Toolbar安裝使用簡要圖文說明...2007-05-05揪出交換機端口背后“兇手”導(dǎo)致網(wǎng)速太慢
揪出交換機端口背后“兇手”導(dǎo)致網(wǎng)速太慢...2007-11-11關(guān)于frameset出現(xiàn)滾動條的解決方法
關(guān)于frameset出現(xiàn)滾動條的解決方法...2007-08-08