Börjat pilla med utveckling för Android som görs med java. Fått en sida att visas i appen med Webview men jag skulle vilja trimma ner den innan den visas i appen ex ta bort flash, vissa bilder, smala av sidan etc. Hört detta kan göras med Regexp, som jag inte har någon alls koll på och det jag sett på nätet verkar mest rörigt. Någon som har tips, exempel eller webbsida som hjälper mig på traven?
trimma ner webbsida med regexp visat med webview, java android
4 svar · 890 visningar · startad av xtreme
Generellt skulle jag säga "undvik regex för HTML-parsning!" men för resurssnåla enheter vet jag inte riktigt. Anses det vara tungt att lägga in en komponent (JTidy eller TagSoup) på ca 90 kb? Jag skulle kolla upp det först, sen om det skulle visa sig att det inte funkar med en parser, då skulle jag kolla på regex.
Slängde ihop ett litet JTidy-exempel på datorn som läser in en webbsida, går igenom noderna och lägger till vissa länkar i en lista. Inget märkvärdigt alls vill säga men det belastade CPUn ganska duktigt, dessutom brukar lite större DOM-objekt käka ganska mycket minne, betydligt mer än själva textinnehållet. Så nej, det här låter ju knappast nåt för enheter med begränsad prestanda.
Regex är nog mycket bättre här.
Sorry om jag fick dig på villospår.
Slängde ihop ett litet JTidy-exempel på datorn som läser in en webbsida, går igenom noderna och lägger till vissa länkar i en lista. Inget märkvärdigt alls vill säga men det belastade CPUn ganska duktigt, dessutom brukar lite större DOM-objekt käka ganska mycket minne, betydligt mer än själva textinnehållet. Så nej, det här låter ju knappast nåt för enheter med begränsad prestanda.
Regex är nog mycket bättre här.Sorry om jag fick dig på villospår.
Du får gärna dela med dig av ditt exempel ändå
Ok, då har jag bifogat ett exempel på ett program som går in på TSN.ca och läser in alla målisar i en lista, sen görs det inget mer.
Problemet med hög CPU-belastning är inte kvar efter att jag tagit bort onödiga och knasiga metoder. Har suttit en sväng under dagen och försökt förenkla flödet.
Exemplet behöver följande libbar för att rulla:
- JTidy
- Apache HttpClient 4.0.1 (http*-filerna samt loggningsjar-filen)