2011-05-26 23 views
17

Bu question was asked once already, ancak API değişti sanırım ve cevaplar artık geçerli değil.String'den HtmlUnit HTMLPage nesnesi nasıl oluşturulur?

URL url = new URL("http://www.example.com"); 
StringWebResponse response = new StringWebResponse("<html><head><title>Test</title></head><body></body></html>", url); 
HtmlPage page = HTMLParser.parseHtml(response, new TopLevelWindow("top", new WebClient())); 
System.out.println(page.getTitleText()); 

TopLevelWindow korunduğu için yapıldığını ve malzeme saçma :)

Herkes nasıl bunu bir fikri vardır bu nedenle pencere uygulayan/uzanan gibi olamaz ? Kolayca yapamayacağımı garip görünüyor.

cevap

23

Bu kod GroovyConsole

@Grapes(
    @Grab(group='net.sourceforge.htmlunit', module='htmlunit', version='2.8') 
) 

import com.gargoylesoftware.htmlunit.* 
import com.gargoylesoftware.htmlunit.html.* 

URL url = new URL("http://www.example.com"); 
StringWebResponse response = new StringWebResponse("<html><head><title>Test</title></head><body></body></html>", url); 
WebClient client = new WebClient() 
HtmlPage page = HTMLParser.parseHtml(response, client.getCurrentWindow()); 
System.out.println(page.getTitleText()); 
+1

Ben bakıyorsun bilmiyorum çalışır, ancak yapıcı korunur. Sınıflar, iç veya iç sınıflar değilse, java, "kamu" olmalıdır ... – lisak

+0

Benim kötü, ben Groovy/Java sınıf beyanı ve incelikle bakıyordu kodumu GroovyConsole içinde çalışmam yaptı. Buna göre basit bir twist ile düzenledim. Bu şimdi sizin için çalışmalıdır – Grooveek

+0

Teşekkürler Grooveek, nasıl oldu da Groovy konsolunda çalışıyordu? – lisak

İlgili konular