Я создаю приложение для своей школы, чтобы было легче проверить, какой урок у вас есть. im, используя свой сайт, но у них явно нет простого API. поэтому мне нужно, чтобы прочитать сайт вниз и получить все на куски. (одиночные теги в глубинах слоев таблиц).
так это то, что я в настоящее время с помощью:
Jsoup getElementsByTag
doc.body().getElementsByTag("div").get(0).getElementsByTag("table").get(1).getElementsByTag("tbody").get(0).getElementsByTag("tr").get(1).getElementsByTag("td").get(0).getElementsByTag("table").get(0).getElementsByTag("tbody").get(0).getElementsByTag("tr").get(0).getElementsByTag("td").get(0).getElementsByTag("a").get(0).html()
док = Jsoup проанализирован документ.
для этого кода работает все нормально, но как только я я попробовать это:
doc.body().getElementsByTag("div").get(0).getElementsByTag("table").get(1).getElementsByTag("tbody").get(0).getElementsByTag("tr").get(2).getElementsByTag("td").get(0).getElementsByTag("table").get(0).getElementsByTag("tbody").get(0).getElementsByTag("tr").get(0).getElementsByTag("td").get(0).getElementsByTag("a").get(0).html()
возвращает ошибку.
03-02 11:30:14.239 15253-15280/? D/JM﹕ Stack [1]: java.util.ArrayList.get(ArrayList.java:308)
03-02 11:30:14.239 15253-15280/? D/JM﹕ Stack [2]: com.jmtech.jordi.mwc.BackgroundWorker.update_r_n(BackgroundWorker.java:374)
03-02 11:30:14.239 15253-15280/? D/JM﹕ Stack [3]: com.jmtech.jordi.mwc.BackgroundWorker.access$500(BackgroundWorker.java:54)
03-02 11:30:14.239 15253-15280/? D/JM﹕ Stack [4]: com.jmtech.jordi.mwc.BackgroundWorker$UpdateRaster_Raster_Notify.run(BackgroundWorker.java:355)
03-02 11:30:14.239 15253-15280/? D/JM﹕ Stack [5]: java.util.Timer$TimerImpl.run(Timer.java:284)
03-02 11:30:14.239 15253-15280/? D/JM﹕ java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
это сайт школы: http://maaswaal.roosternet.nl/?les=3H1
я не могу скопировать & вставить HTML, потому что StackOverflow в вопрос ДИВ передает код на сайт, извините.
Спасибо за ваше время, чтобы ответить уже
плохо тест это прямо сейчас –
@JMgamerZzzTM, что текст, который вы пытаетесь получить доступ? – vins
не работал, по-прежнему имеет ту же ошибку, что и ошибка, нарушила часть кода по частям и обнаружила, что ошибка будет происходить именно здесь: doc.body(). GetElementsByTag ("div"). Get (0) .getElementsByTag ("table") .get (1) .getElementsByTag ("TBODY"). получаем (0) .getElementsByTag ("TR"). получаем (2) .getElementsByTag ("TD"). получаем (0). где вторая таблица пытается собраться –