Jsoup ест дополнительную информацию о DocType, если он включает перенос строки - PullRequest
1 голос
/ 30 июля 2011

Когда я хочу напечатать загруженный файл с помощью Jsoup, некоторая информация из DocType отсутствует, если в нем есть разрыв строки. Это предназначено или это ошибка?

Например:

DocType выглядит так:

 <!DOCTYPE html
      PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

И если я распечатаю его с помощью doc.html () или doc.toString (), я получу:

 <!DOCTYPE html>

Если в нем нет linkebreak, я получаю полный DocType, включая всю информацию.

Что я могу сделать, чтобы решить это?

Приветствие Bene

Ответы [ 2 ]

2 голосов
/ 28 августа 2011

Да, это ошибка.Спасибо за указание на это.Маркер не правильно игнорировал пробел между именем типа документа и открытым идентификатором.

Я исправил ошибку , и он будет доступен в jsoup 1.6.2.

0 голосов
/ 31 июля 2011

Моя проблема может быть решена путем обхода парсера:

org.jsoup.Connection con =Jsoup.connect(url).userAgent(USER_AGENT).timeout(MAX_TIMEOUT).followRedirects(true);
Response resp = con.execute().method(Method.GET);
completeFile = resp.body();
doc = resp.parse();   

Теперь вы получили неотфильтрованный / неразобранный код в переменной "completeFile" и хорошо проанализированный код в документе "doc".

Надеюсь, это кому-нибудь поможет.

Приветствия Bene

...