Использование jsoup для извлечения данных с веб-сайта, генерирующего его содержимое с использованием JSON-LD - PullRequest
0 голосов
/ 14 июня 2019

Это небольшой пример того, как может выглядеть исходный код веб-сайта при просмотре исходного кода:

<script type="application/json+ld">{"@context":"http://schema.org","@graph":[{"@type":"MyArticle","@id":"myID","url":"myURL","date":"2019-06-05T05:09:54+02:00","name":"myName","description":"myDescription"
</script>

Я изменил свой код следующим образом, что, похоже, работает, хотя при большом количестве контента не все извлекаются.

for (Element scripts : mBlogDocument.getElementsByTag("script").attr("type","application/ld+json")) {

            for (DataNode dataNode : scripts.dataNodes()) {

                if (dataNode.getWholeData().contains("MyArticle")) {

                    Log.d(TAG,dataNode.getWholeData());
                }
            }
        }

Итак, у меня есть 2 вопроса: А) Есть ли надежный способ всегда извлекать контент, независимо от того, насколько большой контент внутри тега скрипта использует dataNode.getWholeData ()? и

B) Должен ли я продолжать с Jsoup или заниматься чем-то другим, чтобы получить контент такого рода?

...