JSOUP java .io.IOException: ввод двоичный и не поддерживается - PullRequest
1 голос
/ 10 января 2020

У меня есть проект, который требует, чтобы я использовал JSOUP для просмотра веб-страниц. Мне удалось получить данные с главной страницы сайта, которые я хочу очистить. но, углубляясь в страницу, зацикливаясь на гиперссылке и получая к ней доступ, я получаю следующие ошибки:

java.io.IOException: Input is binary and unsupported
    at org.jsoup.UncheckedIOException.<init>(UncheckedIOException.java:11)
    at org.jsoup.parser.CharacterReader.<init>(CharacterReader.java:38)
    at org.jsoup.parser.CharacterReader.<init>(CharacterReader.java:43)
    at org.jsoup.parser.TreeBuilder.initialiseParse(TreeBuilder.java:38)
    at org.jsoup.parser.HtmlTreeBuilder.initialiseParse(HtmlTreeBuilder.java:65)
    at org.jsoup.parser.TreeBuilder.parse(TreeBuilder.java:46)
    at org.jsoup.parser.Parser.parseInput(Parser.java:35)
    at org.jsoup.helper.DataUtil.parseInputStream(DataUtil.java:169)
    at org.jsoup.helper.HttpConnection$Response.parse(HttpConnection.java:835)
    at org.jsoup.helper.HttpConnection.get(HttpConnection.java:285)

, когда я проверяю веб-сайт, существуют части веб-сайта, которые содержат двоичный файл с комментариями данные, и я думаю, что это вызвало проблему. Я пытался использовать этот код:

Document docs2 = Jsoup.connect("https://www.kiatravels.co.id/group_tour/index?TOUR_ID=1467&ID=15803").ignoreContentType(true).get();

, но все еще не работал.

Здесь надеемся, что какой-нибудь мастер мозгового кода может помочь!

1 Ответ

1 голос
/ 12 января 2020

Похоже, вы перешли по ссылке "Скачать маршрут", которая открывает PDF-файл. Перед анализом ссылки с помощью Jsoup вам нужно проверить тип содержимого ответа URL.

Connection.Response res = Jsoup.connect(url).execute(); 
String contentType = res.contentType();

Возможно, вы захотите игнорировать MIME-типы , которые не text/html.

...