używam wszystkich wersji Ciąg Jsoup.parse():Czy istnieje sposób na przyspieszenie Jsoup.parse()?
parse(String html, String baseUri)
wykluczając prędkości łączność benchmarkingu jego wydajność.
Na typowym low-end telefon z Androidem, nazywając Jsoup.parse()
na ciąg html a nie tak rzadkich długiej stronie Wikipedia (~ 600KB), bierze 9 sekund!
Mój klient nie chce zaakceptować tego opóźnienia i myślę o tym, że albo wyrzucę Jsoup na inny silnik, parsuję strony internetowe (wciąż w Javie), albo użyję jakiegoś parsera C/C++ w NDK (jeśli jest dostępny).
Ale wolę nadal używać Jsoup tak bardzo, jak to możliwe.
Czy istnieje sposób na przyspieszenie Jsoup.parse()
?
Może ci pomóc, jeśli wyjaśnisz, co planujesz zrobić z analizowaną stroną. – CommonsWare
@CommonsWare Wyświetlaj określone części strony HTML na różne sposoby, używając dobrze znanej składni Jsoup 'select()'. Nie mogę użyć 'select()' Jsoup zanim przetwarzanie Jsoupa się skończy. – Souper
Ja też tak się stało. Jsoup.parse to na pewno śledź wydajnościowy i myślę, że jeśli połączysz to z jaśniejszą pamięcią Java na urządzeniach z Androidem, które mają ograniczoną pamięć, wyniki mogą być dość złe. W przeszłości poprawiłem swoją wydajność, nie używając przetwarzania, gdy nie muszę - na przykład używając wyrażeń regularnych/manipulacji ciągami, aby wyodrębnić informacje. –