Как выбрать классы, которые имеют тире "-" с помощью jsoup? - PullRequest
0 голосов
/ 21 сентября 2018

Предположим, я хочу выбрать html с помощью jsoup:

<p class="foo bar-baz">Hello World!</p>

. Я могу выбрать его из объекта Document doc с помощью doc.select("p.foo").Этот поиск абзацев с классом foo.Я хочу быть более конкретным, поэтому я попытаюсь перейти с doc.select("p.foo.bar-baz").Я знаю, что могу указать дополнительные классы, если разделю их точкой, однако в приведенном выше примере черточка, похоже, вызывает проблемы.Что мне нужно сделать, чтобы выбрать класс bar-baz?

1 Ответ

0 голосов
/ 22 сентября 2018

Оказывается, проблема заключалась в том, что я использовал html от инструментов разработчика в chrome, но html объекта Document отличался.Это не тот же код, но в сущности произошло то, что chrome покажет это:

<p class="foo bar-baz">Hello World!</p>

Когда html объекта Document в реальности имеет только это:

<p class="foo">Hello World!</p>

Естественно, это было причиной нулевого указателя.Затем я попытался выбрать элементы с черточками, и у них возникли проблемы с ними (как указал luksch в комментарии выше).

Я не уверен, почему они показывают разные HTML, но теперь я знаю, что могу рассчитывать только наDocument HTML для выбора элементов.

...