Так что я использую JSoup для очистки сайта, который создает кучу div с динамическими именами классов (они меняют каждую перезагрузку), но с одинаковыми именами атрибутов.Например:
<div class="[random text here that changes] js_resultTile" data-listing-number="[some number]">
<div class="a12_regularTile js_rollover_container " itemscope itemtype="http://schema.org/Product" data-listing-number="[same number here]">
<a href...
Я пробовал несколько подходов к выбору этих элементов и сохранению их в элементах, но я не могу понять, как это правильно.Я пробовал по атрибуту:
Document doc = Jsoup.connect([theUrl]).get();
Elements myEls = doc.select("div[data-listing-number]");
Я пробовал по классу:
Document doc = Jsoup.connect([theUrl]).get();
Elements myEls = doc.getElementsByClass("a12_regularTile")
И:
Document doc = Jsoup.connect([theUrl]).get();
Elements myEls = doc.select("div[class*=js_resultTile]")
Я пробовал другой метод атрибута:
Document doc = Jsoup.connect([theUrl]).get();
Elements myEls = new Elements();
for (Element element : doc.getAllElements() )
{
for ( Attribute attribute : element.attributes() )
{
if ( attribute.getKey().equalsIgnoreCase("data-listing-number"))
{
myEls.add(element);
}
}
}
Ни одна из этих работ.Я могу выбрать документ, который получает весь HTML, но мой объект myEls всегда пуст.Что я могу использовать для выбора этих элементов?