Я получаю все кавычки из https://www.brainyquote.com/authors/oscar_wilde и добавляю текст каждого элемента в список типа String, и все работает как надо. Моя проблема в том, что он не захватывает каждый элемент с сайта. Это только заканчивает тем, что захватил 25 каждый раз. Я проверил это, загрузив кавычки и распечатав размер списка, что дает 25. Есть ли способ загрузить каждый элемент с помощью jsoup, чтобы я мог получить все кавычки?
Это соответствующий класс. Как я уже сказал, все работает как надо. Единственная проблема - захват всех кавычек вместо 25. Примечание: игнорируйте тот факт, что я начинаю индекс с 21, то же самое происходит, когда я начинаю его с 0.
package com.galanjulio.pequitas.quotes;
import com.galanjulio.pequitas.Pequitas;
import lombok.Getter;
import lombok.Setter;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class QuoteHandler {
private Document document;
private List<String> quotes;
@Getter
@Setter
private int index;
public QuoteHandler() {
try {
document = Jsoup.connect("https://www.brainyquote.com/authors/oscar_wilde").get();
} catch (IOException e) {
e.printStackTrace();
}
index = 21;
quotes = new ArrayList<>();
loadQuotes();
}
public String getNextQuote() {
index++;
if (index >= quotes.size()) {
index = 0;
}
Pequitas.getInstance().saveSettings();
return quotes.get(index);
}
private void loadQuotes() {
List<Element> elements = document.getElementsByClass("b-qt");
for (Element element : elements) {
quotes.add(element.text());
}
}
}