Как преобразовать документ, созданный в Jsoup (парсер Java html), в строку

У меня есть документ, сделанный в jsoup, который выглядит так

Document doc = Jsoup.connect("http://en.wikipedia.org/").get();

Как мне преобразовать это doc в строку.


person Hudson Hughes    schedule 28.07.2011    source источник


Ответы (3)


Ты пробовал:

Document doc = Jsoup.connect("http://en.wikipedia.org/").get();
String htmlString = doc.toString();

Поскольку Document расширяет Element, он также имеет метод html(), который «извлекает внутренний HTML-код элемента» в соответствии с API. Итак, это должно работать:

Document doc = Jsoup.connect("http://en.wikipedia.org/").get();
String htmlString = doc.html();

Дополнительная информация:

Каждый объект Document имеет ссылку на экземпляр внутреннего класса Document.OutputSettings, доступ к которому можно получить с помощью метода outputSettings() класса Document . Там вы можете включить/отключить красивую печать с помощью установщика prettyPrint(true/false). Дополнительную информацию см. в API для Document и Document.OutputSettings.

person das_weezul    schedule 28.07.2011
comment
Первый блок кода дал мне [Ljava.lang.String;@383534aa вместо html/content. Кстати, а если это Document[]? - person Hack-R; 12.09.2016

doc.toString() работает, как и doc.outerHtml().

person Jeremy Roman    schedule 28.07.2011
comment
Document.toString() внутренне звонит outerHtml(). - person Zaki; 16.06.2019

 Document doc = Jsoup.connect("http://en.wikipedia.org/").get();     
 Elements post = doc.select("div.post-content");
 String dd = post.toString();
 Document ddd = Jsoup.parse(dd);

После синтаксического анализа строки для документа вы можете использовать на ней функции документа

 Elements scriptTag = ddd.getElementsByTag("script");
 System.out.println(scriptTag);
person NomanJaved    schedule 03.09.2014