Örnek

Jericho HTML Parser ile Bir Html Belgesindeki Metin İçeriğinin ve Attribute Değerinin Alındığı Örnek

Html belgesi aşağıdaki gibidir :
<html><head>
<meta charset="utf-8"/>
<title>Bilgi Sayfası</title>
</head>
<body><h1 class="test">Ali</h1> eve <b>şimdi</b> geldi
<img src="a.gif" alt="Ali'nin Resmi">
</body></html>
Bu HTML içindeki metinler aşağıdaki gibi uygulama ile alınıp ekrana basılabilir:
import java.io.ByteArrayInputStream;
import java.io.IOException;

import net.htmlparser.jericho.Attribute;
import net.htmlparser.jericho.Source;
import net.htmlparser.jericho.StartTag;
import net.htmlparser.jericho.TextExtractor;

public class TextExtractorAtributeTest {

	public static void main(String[] args) throws IOException {
		
		String html1="<html><head><meta charset=\"utf-8\"/><title>Bilgi Sayfası</title></head>"
				+ "<body><h1 class=\"test\">Ali</h1> eve <b>şimdi</b> geldi"
				+ "<img src=\"a.gif\" alt=\"Ali'nin Resmi\"></body></html>";
		
		Source source=new Source(new ByteArrayInputStream(html1.getBytes("UTF-8")));
		
		TextExtractor textExtractor=new TextExtractor(source){
			public boolean includeAttribute(StartTag startTag, Attribute attribute) {
				
		        if(startTag.getName().equals("img") &&  attribute.getKey().equals("alt")){
		        	return true;
		        }
		        
		        return false;
		    }
		};
		
		textExtractor.setIncludeAttributes(true);
		
		System.out.println(textExtractor.toString());
		
	}
	
}
Ekranda aşağıdaki gibi bir metin görülür:


Bilgi Sayfası Ali eve şimdi geldi Ali'nin Resmi


Dikkat edilirse title elementinin değeri alınmıştır. includeAttribute method'u override edilerek, img elementinin, alt attributes'in değeri de alınmıştır. Bunun yapılabilmesi için setIncludeAttributes ile true değer atanmalıdır.
zafer.teker , 29.02.2016

Bu Sayfayı Paylaş:

Fibiler Üyelerinin Yorumları


Tüm üyeler içeriklere yorum ekleyerek katkıda bulunabilir : Yorum Gir

Misafir Yorumları




Bu Sayfayı Paylaş:

İletişim Bilgileri

Takip Et

Her Hakkı Saklıdır. Bu sitede yayınlanan tüm bilgi ve fikirlerin kullanımından fibiler.com sorumlu değildir. Bu sitede üretilmiş , derlenmiş içerikleri, fibiler.com'u kaynak göstermek koşuluyla kendi sitenizde kullanılabilirsiniz. Ancak telif hakkı olan içeriklerin hakları sahiplerine aittir