Autore Topic: Ottenere dati Tramite webview  (Letto 662 volte)

Offline lillogoal

  • Utente normale
  • ***
  • Post: 167
  • Respect: +4
    • Google+
    • lillosogliani
    • Mostra profilo
    • LilloNet
  • Dispositivo Android:
    Galaxy s3, Nexus 7,galaxy s advance,galaxy scl
  • Play Store ID:
    Lillonet Inc.
  • Sistema operativo:
    Windows 8,7 & Kali-Linux
Ottenere dati Tramite webview
« il: 29 Agosto 2013, 12:38:33 CEST »
0
Salve a tutti,
non so se si possa fare una cosa simile, ma ascoltate: praticamente vorrei caricare la pagina di un sito tramite vebview e poi vorrei ottenere dei dati dalla pagine e metterli in una tabella... mi sembra una cosa abbastanza complessa. Vorrei interfacciare una pagina web con una tabella su android :) magari esistessero delle JTable come su JAVA.
Vi ringrazio in anticipo :)
Saluti
Chi non progetta la sicurezza , programma il fallimento! K.M

Offline matttt

Re:Ottenere dati Tramite webview
« Risposta #1 il: 29 Agosto 2013, 13:31:47 CEST »
+1
Se non hai modo di ottenere i dati da parte del sito in modo diverso (JSon / XML / altro) mi sa che non ti resta altro che fare il parsing dell'HTML ed estrarre i dati dalla tabella.
Eventualmente prova Jsoup (jsoup Java HTML Parser, with best of DOM, CSS, and jquery), funziona molto bene su Android (io la uso regolarmente nella mia app)
Le mie apps su Google Play Store:

Offline lillogoal

  • Utente normale
  • ***
  • Post: 167
  • Respect: +4
    • Google+
    • lillosogliani
    • Mostra profilo
    • LilloNet
  • Dispositivo Android:
    Galaxy s3, Nexus 7,galaxy s advance,galaxy scl
  • Play Store ID:
    Lillonet Inc.
  • Sistema operativo:
    Windows 8,7 & Kali-Linux
Re:Ottenere dati Tramite webview
« Risposta #2 il: 29 Agosto 2013, 13:33:00 CEST »
0
OK grazie mille :)
Se hai mica degli esempi?
Chi non progetta la sicurezza , programma il fallimento! K.M

Offline matttt

Re:Ottenere dati Tramite webview
« Risposta #3 il: 29 Agosto 2013, 13:39:43 CEST »
+1
Qui uso il connect / get di Jsoup ma puoi benissimo scaricarti la pagina tu e passare una stringa.
Codice (Java): [Seleziona]
Connection conn = Jsoup.connect( URL );
conn.timeout( 30000 );
conn.userAgent( "TEST_APP" );
Document doc = conn.get();
Elements title = doc.select( "title" );
if( title.size() > 0 ) Log.d( "[title]", title.get( 0 ).toString() );
Qualche nota:
- il timeout per la connessione è importante, io uso sempre almeno 30 secondi, poi vedi tu
- se non specifichi l'user agent in funzione del sito puoi ottenere la versione mobile, eventualmente cerca online altre stringhe per far finta che tu stia usando Firefox o altro se vuoi
- Elements ti fornisce una collezione di oggetti che puoi iterare, nel tuo caso potresti voler passare tutti i TD di una tabella
- select() ti permette di usare CSS per la selezione degli elementi... quindi puoi usare cose come #id oppure .class o sistemi più soffisticati... table tr td
Le mie apps su Google Play Store:

Offline lillogoal

  • Utente normale
  • ***
  • Post: 167
  • Respect: +4
    • Google+
    • lillosogliani
    • Mostra profilo
    • LilloNet
  • Dispositivo Android:
    Galaxy s3, Nexus 7,galaxy s advance,galaxy scl
  • Play Store ID:
    Lillonet Inc.
  • Sistema operativo:
    Windows 8,7 & Kali-Linux
Re:Ottenere dati Tramite webview
« Risposta #4 il: 29 Agosto 2013, 13:55:57 CEST »
0
Grazie grazie e ri grazie, sei stato molto esplicativo.
Ancora una cosa non hai mica un sorgente completo? :)
Chi non progetta la sicurezza , programma il fallimento! K.M

Offline matttt

Re:Ottenere dati Tramite webview
« Risposta #5 il: 29 Agosto 2013, 14:00:40 CEST »
0
Grazie grazie e ri grazie, sei stato molto esplicativo.
Ancora una cosa non hai mica un sorgente completo? :)
Mi sembri uno comodo però eh :P

La documentazione è ottima, ha anche un buon set di esempi.
Cookbook: jsoup Java HTML parser

Per quanto riguarda la selezione CSS cerca un poco online, sarebbe lunga spiegare tutto.
CSS Reference

Ti converrà estrarre le righe (TR) dalla tabella che ti interessa e da quella estrarre le celle (TD) coi dati
Le mie apps su Google Play Store:

Offline lillogoal

  • Utente normale
  • ***
  • Post: 167
  • Respect: +4
    • Google+
    • lillosogliani
    • Mostra profilo
    • LilloNet
  • Dispositivo Android:
    Galaxy s3, Nexus 7,galaxy s advance,galaxy scl
  • Play Store ID:
    Lillonet Inc.
  • Sistema operativo:
    Windows 8,7 & Kali-Linux
Re:Ottenere dati Tramite webview
« Risposta #6 il: 29 Agosto 2013, 14:02:19 CEST »
0
HAHAHA :) hai ragione perchè prima di sbattere la testa voglio esserne sicuro... scusa :D
Chi non progetta la sicurezza , programma il fallimento! K.M