BaoYaEr
java讀取網(wǎng)站內容的兩種方法
1,HttpClient
利用apache的虛擬客戶端包獲取某個地址的內容
?1
import
?java.io.UnsupportedEncodingException;
?2
import
?java.util.HashSet;
?3
import
?java.util.Iterator;
?4
import
?java.util.Set;
?5
import
?java.util.regex.Matcher;
?6
import
?java.util.regex.Pattern;
?7
?8
import
?org.apache.commons.httpclient.HttpClient;
?9
import
?org.apache.commons.httpclient.NameValuePair;
10
import
?org.apache.commons.httpclient.methods.PostMethod;
11
12
public
?
class
?catchMain?
{
13
14
????
/**?*/
/**
15
?????*?
@param
?args
16
?????
*/
17
????
public
?
static
?
void
?main(String[]?args)?
{
18
????????
19
20
????????String?url?
=
?
"
http://search.foodqs.com/companysearch.asp
"
;
21
????????String?keyword
=
"
食
"
;
22
????????String?response
=
createhttpClient(url,keyword);
23
????}
24
25
public
?
static
?String?createhttpClient(String?url,String?param)
{
26
????????HttpClient?client?
=
?
new
?HttpClient();
27
????????String?response
=
null
;
28
????????String?keyword
=
null
;
29
????????PostMethod?postMethod?
=
?
new
?PostMethod(url);
30
????????
try
?
{
31
????????????
if
(param
!=
null
)
32
???????????keyword?
=
?
new
?String(param.getBytes(
"
gb2312
"
),
"
ISO-8859-1
"
);
33
????????}
?
catch
?(UnsupportedEncodingException?e1)?
{
34
????????????
//
?TODO?Auto-generated?catch?block
35
????????????e1.printStackTrace();
36
????????}
37
????????
38
????????NameValuePair[]?data?
=
?
{?
new
?NameValuePair(
"
keyword
"
,?keyword)?}
;
39
????????
//
?將表單的值放入postMethod中
40
????????postMethod.setRequestBody(data);
41
????????
42
????????
try
?
{
43
????????????
int
?statusCode?
=
?client.executeMethod(postMethod);
44
????????????response?
=
?
new
?String(postMethod.getResponseBodyAsString()
45
????????????????????.getBytes(
"
ISO-8859-1
"
),?
"
GBK
"
);
46
????????}
?
catch
?(Exception?e)?
{
47
48
????????????e.printStackTrace();
49
????????}
50
????????
return
?response;
51
????????????
52
????}
53
????????
2.java自帶的HttpURLConnection
?1
public
?
static
?String?getPageContent(String?strUrl,?String?strPostRequest,
?2
????????????
int
?maxLength)?
{
?3
????????
//
讀取結果網(wǎng)頁
?4
????????StringBuffer?buffer?
=
?
new
?StringBuffer();
?5
????????System.setProperty(
"
sun.net.client.defaultConnectTimeout
"
,?
"
5000
"
);
?6
????????System.setProperty(
"
sun.net.client.defaultReadTimeout
"
,?
"
5000
"
);
?7
????????
try
?
{
?8
????????????URL?newUrl?
=
?
new
?URL(strUrl);
?9
????????????HttpURLConnection?hConnect?
=
?(HttpURLConnection)?newUrl
10
????????????????????.openConnection();
11
????????????
//
POST方式的額外數(shù)據(jù)
12
????????????
if
?(strPostRequest.length()?
>
?
0
)?
{
13
????????????????hConnect.setDoOutput(
true
);
14
????????????????OutputStreamWriter?out?
=
?
new
?OutputStreamWriter(hConnect
15
????????????????????????.getOutputStream());
16
????????????????out.write(strPostRequest);
17
????????????????out.flush();
18
????????????????out.close();
19
????????????}
20
????????????
//
讀取內容
21
????????????BufferedReader?rd?
=
?
new
?BufferedReader(
new
?InputStreamReader(
22
????????????????????hConnect.getInputStream()));
23
????????????
int
?ch;
24
????????????
for
?(
int
?length?
=
?
0
;?(ch?
=
?rd.read())?
>
?
-
1
25
????????????????????
&&
?(maxLength?
<=
?
0
?
||
?length?
<
?maxLength);?length
++
)
26
????????????????buffer.append((
char
)?ch);
27
????????????rd.close();
28
????????????hConnect.disconnect();
29
????????????
return
?buffer.toString().trim();
30
????????}
?
catch
?(Exception?e)?
{
31
????????????
//
?return?"錯誤:讀取網(wǎng)頁失敗!";
32
????????????
return
?
null
;
33
????????}
34
????}
發(fā)表于 2007-01-26 11:46
大田斗
閱讀(3806)
評論(2)
編輯
收藏
所屬分類:
java
評論
#
re: java讀取網(wǎng)站內容的兩種方法
第二個方法會出現(xiàn)中文亂碼,該怎么解決?
youthcolor
評論于 2009-03-08 10:15
回復
更多評論
#
re: java讀取網(wǎng)站內容的兩種方法
@youthcolor
BufferedReader rd = new BufferedReader(new InputStreamReader( hConnect.getInputStream() ,encoding));
游客
評論于 2010-06-12 17:51
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發(fā)表評論。
網(wǎng)站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
mule事件驅動服務
JDK1.5中的線程池(java.util.concurrent.ThreadPoolExecutor)使用簡介
在xml的汪洋中遨游之mule篇
linux下java運行腳本
深入淺出之正則表達式【zt】
JavaClassLoader與Package機制
JTA事務初級研究
Spring2.5注釋語法
java annotation
J2SE5.0中最有趣的新特性:注釋(annotation) [zt]
<
2025年7月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
導航
BlogJava
首頁
發(fā)新隨筆
發(fā)新文章
聯(lián)系
聚合
管理
統(tǒng)計
隨筆: 32
文章: 427
評論: 144
引用: 0
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2008年12月 (1)
2008年4月 (2)
2008年2月 (1)
2008年1月 (1)
2007年12月 (3)
2007年11月 (1)
2007年10月 (3)
2007年7月 (2)
2007年6月 (1)
2007年4月 (2)
2007年3月 (3)
2007年2月 (5)
2007年1月 (3)
2006年12月 (4)
文章分類
axis(6)
(rss)
eclipse(7)
(rss)
Hibernate(30)
(rss)
html/js/css(107)
(rss)
java(106)
(rss)
linux(7)
(rss)
Lucene(7)
(rss)
spring(36)
(rss)
Spring CLOUd(1)
(rss)
Strtus(30)
(rss)
其它(48)
(rss)
開源opensource(48)
(rss)
數(shù)據(jù)庫DateBase(30)
(rss)
設計模式(12)
(rss)
文章檔案
2018年8月 (1)
2012年5月 (1)
2012年4月 (2)
2011年7月 (6)
2010年3月 (1)
2010年2月 (1)
2010年1月 (3)
2009年12月 (1)
2009年10月 (1)
2009年8月 (3)
2009年3月 (1)
2009年2月 (1)
2008年12月 (3)
2008年11月 (10)
2008年10月 (3)
2008年9月 (2)
2008年8月 (2)
2008年7月 (4)
2008年6月 (13)
2008年5月 (15)
2008年4月 (9)
2008年3月 (10)
2008年1月 (18)
2007年12月 (33)
2007年11月 (6)
2007年10月 (18)
2007年9月 (10)
2007年8月 (18)
2007年7月 (15)
2007年6月 (25)
2007年5月 (19)
2007年4月 (26)
2007年3月 (38)
2007年2月 (33)
2007年1月 (27)
2006年12月 (27)
2006年11月 (12)
java
Ajax特效網(wǎng)站
cndiy nio
GRO
Hani Suleiman's blog
Java之路
java論壇
J道
mule
mule 入門
oksonic(動畫教程)
一路由你
中國eclipse
八進制
在線源碼
多線程實戰(zhàn)
天火
小米的blogjava
幻境伯克----jface/swt
很全的博克-強
每日一得
滿江紅
邢紅瑞
飛翔
鳥詩選(js)
鳥食軒 (dhtml)
工具
apache中文手冊
extjs學習
iconFindre
java 安全
javaresearch
java技巧網(wǎng)
js之王
matrix(study)
prototype api
spring中文
北京IT企業(yè)速查
在線流程圖工具
雅虎翻譯
朋友
Happyshow
hibernate異常
skywalker
sunshow
xf
亞光
同云博客
小弟鵬
張玉磊
昕
李陽
黃鳴
搜索
積分與排名
積分 - 1104425
排名 - 28
最新評論
1.?re: hibernate.cfg.xml配置
好全啊 .. 棒棒噠 ~ !
--junqinag.yang
2.?re: Quartz任務調度快速入門
我現(xiàn)在來看還是覺得不錯
--小任
3.?re: js中this的總結
評論內容較長,點擊標題查看
--pam
4.?re: Quartz任務調度快速入門
樓主辛苦
--yd
5.?re: Quartz任務調度快速入門
頂了,內容寫的很好
--sen
閱讀排行榜
1.?網(wǎng)頁不緩存(3563)
2.?Form嵌套引起的問題 (2867)
3.?解決IE下CSS背景圖片閃爍的Bug(2458)
4.?Spring AOP的動態(tài)載入原理(2416)
5.?如何制作漂亮的Excel表格(2057)
評論排行榜
1.?北京戶口--吃官司(5)
2.?開始→運行→輸入的命令集錦(3)
3.?讓網(wǎng)頁上的所有圖片動起來(2)
4.?Dom4j 編碼問題徹底解決 (1)
5.?心情不爽(1)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 大田斗
主站蜘蛛池模板:
一级成人a做片免费
|
j8又粗又长又硬又爽免费视频
|
中文字幕久无码免费久久
|
国产高清免费的视频
|
亚洲国产精品无码久久
|
野花高清在线电影观看免费视频
|
一二三四在线观看免费中文在线观看
|
好爽…又高潮了免费毛片
|
亚洲中文字幕久久精品无码VA
|
一个人免费观看www视频在线
|
ww亚洲ww在线观看国产
|
四虎免费在线观看
|
看全免费的一级毛片
|
亚洲国产精品丝袜在线观看
|
成人a毛片免费视频观看
|
亚洲最大AV网站在线观看
|
a级毛片免费全部播放
|
亚洲一区二区成人
|
日韩不卡免费视频
|
亚洲AV成人精品一区二区三区
|
宅男666在线永久免费观看
|
国产亚洲视频在线观看
|
国产成人毛片亚洲精品
|
午夜免费啪视频在线观看
|
久久精品国产亚洲αv忘忧草
|
日韩一区二区三区免费体验
|
成年大片免费高清在线看黄
|
国产亚洲精AA在线观看SEE
|
9420免费高清在线视频
|
亚洲日本成本人观看
|
亚洲精品高清在线
|
日韩精品无码一区二区三区免费
|
亚洲人妖女同在线播放
|
免费人妻无码不卡中文字幕18禁
|
日本一区午夜艳熟免费
|
性xxxx黑人与亚洲
|
国产啪亚洲国产精品无码
|
亚洲黄色免费电影
|
污视频网站免费观看
|
亚洲成a人片7777
|
五月天婷亚洲天综合网精品偷
|