[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends:00046] HTML タグの取得について<リンクタグと構造タグの違い?>



はじめまして。本日から参加させて頂きました。
よろしくお願いします。

現在、www上からHTMLファイルをダウンロードし、解析する
ソフトを作成しております。その際、とりあえず<a href>タグ
と<img src>タグを取得しようとしたところ、同じHTMLのタグ
であるにも関わらず、下記①の方法では<a href>タグが取得で
きず、仕方なく<a href>タグのみ、下記②の方法で取得してい
ます。なぜこうなるのか?又、解決方法などのご意見を頂けた
ら、幸いです。どうかよろしくお願いします。

①<img src>タグ属性の取得
→HTMLEditorKit.Parserの、parse()メソッドを用いてパーサ
 ーを取得。
→HTMLEditorKit.ParserCallbackのサブクラス内で     handleSimpleTag()
をオーバーライドしてタグ属性を取得
→handleSimpleTag(HTML.Tag tag, MutableAttributeSet   
              attribute,int position){
  if(tag == HTML.Tag.IMG){
     //属性を取得(テストにより表示のみ)
    
System.out.println(attribute.getAttribute(HTML.Attribute.HREF).toString());
  }
}
②<a href>タグ属性の取得
→HTMLEditorKitのread()を用いてHTMLを解析
→その後、
ElementIterator it = new ElementIterator(doc);
javax.swing.text.Element elem;
while ((elem = it.next()) != null) {
  SimpleAttributeSet s = (SimpleAttributeSet)
    elem.getAttributes().getAttribute(HTML.Tag.A);
  if(s != null) {
  //属性を取得(テストにより表示のみ)   
System.out.println(s.getAttribute(HTML.Attribute.HREF));
}
※書いてみて・・ソース全部乗せないと超わかりづらいなと
 思いました・・(汗



__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!
http://bb.yahoo.co.jp/