Bonjour
Le programme qui suit me permet de parser une page HTML.
Celui-ci fonctionne parfaitement tant que le nombre de myLink" et de myPrices est égal.
Seulement parfois le prix n'est pas indiqué et la balise "price" n'existe pas ce qui engendre une différence entre "title" et "prix" et une erreur de type :
java.lang.IndexOutOfBoundsException, ce qui est normal.
Comment faire pour parser le document et associer le bon prix au bon title ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Document myDoc = Jsoup.connect("maPage.html").get(); Elements myContent = myDoc.select("div.list-oag"); Elements myLink = myContent.select("a"); Elements myPrices = myContent.select("div.price"); String[] title = new String[myLink.size()]; String[] prix = new String[myPrices.size()]; for(int i=0;i<myLink.size();i++){ title[i] = myLink.get(i).getElementsByClass("title").text(); prix[i] = myPrices.get(i).getElementsByClass("price").text(); } for(int j=0;j<myLink.size();j++){ out.println(title[j]); out.println(" - Prix: "+prix[j]); out.println("<br>"); }
Merci d'avance !
Partager