Versione offline di pagine dinamiche

1

La ricerca di sistemi di archiviazione come archive.org , ha scoperto che il problema principale è il contenuto dinamico.

L'analisi iniziale mostra che la 'dinamica' del contenuto può essere assegnata a uno dei seguenti livelli:

  1. Contenuto html statico - semplice pagina Web vecchia rappresentata solo dal markup html con risorse ausiliarie css (in genere immagini).

  2. HTML statico alimentato da javascirpt - identico al Livello 1, ma con codice javascript, che modifica solo il markup esistente (come expand / collapse).

  3. Costruzione della pagina "Onload" - pagina web con codice javascript, che rende alcune richieste aggiuntive durante la fase di caricamento della pagina. Dopo il caricamento, il contenuto della pagina di fase è completamente costruito.

  4. Contenuto lato client dinamico : gli elementi dell'interfaccia utente vengono modificati dal codice javascript mentre l'utente attraversa l'interfaccia. Di solito si tratta di moderne SPA (applicazioni a pagina singola, come gmail.com), elenchi "infiniti" (coda di elenco caricata quando l'utente scorre verso il basso fino alla lista in basso), caricamento di contenuti su richiesta (smart expander) e così via.

Quindi presumo che i Livelli 1 e 2 possano essere archiviati abbastanza facilmente. Potresti suggerire come gestire i livelli 3 e 4? Sembra che dovrebbe comportare il rendering della pagina, ma alcuni dettagli sarebbero utili.

Aggiornamento : per chiarire la domanda: la versione idealmente offline dovrebbe essere pienamente funzionale, almeno all'interno del livello del sito (ignorando il contenuto dei domini esterni). Inoltre, se Level4 è troppo difficile da automatizzare completamente, esiste un approccio che coinvolge l'operatore umano che suggerisce al sistema i contenuti?

    
posta mikalai 24.06.2013 - 09:30
fonte

1 risposta

0

È fattibile, integra nel tuo crawler un browser webkit. Quindi cerca prima tutte le pagine statiche. Annota le richieste effettuate dalla pagina (puoi ora perché il browser del tuo crawler esegue effettivamente il rendering della pagina).

Questo ti darà una panoramica delle risposte fatte.

Gli onload sono facili perché vengono eseguiti direttamente. La parte più difficile sono elementi cliccabili che caricano contenuti aggiuntivi. Per farli trovare tutto con un evento personalizzato allegato ed eseguire l'evento per vedere cosa succede. Se il contenuto cambia, lo saprai.

Le risposte potrebbero essere cache in modo da poter creare una versione funzionante completa.

Le considerazioni riguardano principalmente il tempo di elaborazione e i problemi del browser. È molto più lento eseguire la ricerca per indicizzazione in questo modo, quindi l'analisi testuale poiché è effettivamente necessario caricare e visualizzare la pagina.

    
risposta data 24.06.2013 - 11:40
fonte

Leggi altre domande sui tag