[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends] Re: UrlRetriever.java
高橋智宏さんからのメールを転送します。
==========================================================================
<このままJava互助会MLに転送していただいて構いません。>
高橋@シンヨーサンワテクノス です。
昨晩、UrlRetrieverクラスを拝見いたしました。私も昔同じようなものを作成し
ていました。HTMLファイルを読み込んだら、片っ端からURLの文字列を見つけて、
世界中のリンクを辿り続けるものでした。パケットの無駄遣いとはまさにこの事で
す。(^^;
遠藤さんは、いろいろとタグを解析していらっしゃるようですが、私の場合は、
以下のようにコーディングしていました。
<1>HTMLファイル読み込み
<2>1行づづ読み込む
<3>1行を「"」で区切り、文字列(spec)を切り出す
<4>切り出した文字列を利用して、URL url = new URL(base, spec)
URL url = new URL(spec)
を行い、MalformedURLExceptionを検出する
簡単なコードを書くとこんな感じでしょうか...
String line = in.readLine();
StringTokenizer tokenizer = new StringTokenizer(line, "\"");
while( tokenizer.hasMoreTokens() )
{
String spec = tokenizer.nextToken();
URL url1 = null;
URL url2 = null;
try{
url1 = new URL(base, spec);
}
catch(MalformedURLException url_e1){}
try{
url2 = new URL(spec);
}
catch(MalformedURLException url_e2){}
if( url1 != null )
....
if( url2 != null )
....
}
何か参考になれば幸いです。
------------
高橋智宏
==========================================================================
------------------------------------------------------------------
遠藤靖之 (えんどう やすゆき) <yasuyuki@xxxxxxxxxx>
http://www.freepage.total.co.jp/jfriends/ (Java互助会ホームページ)
株式会社タイムインターメディア 情報通信サービス部 TEL 03-5362-9009
〒162-0065 新宿区住吉町3-11 新宿スパイアビル8F FAX 03-5362-9008