Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    7

    Parsing Pagina HTML e calcolo Keywords Density

    Buongiorno a tutti, vi sottopongo il seguente problema:

    Vorrei effettuare il parsing di una pagina html (partendo dall'url della pagina stessa in cui è incluso il web user control che effettua l'operazione) per poi calcolarne la keyword density al fine di popolare una tag cloud (sto utilizzando questo semplice controllo http://www.codeproject.com/useritems/cloud.asp che renderizza un array di elementi contenente le keywords con tag e peso, cioè numero di ricorrenze nella pagina).

    Al momento effettuo queste operazioni:

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.jabawack.it");
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    StreamReader resStreamReader = new StreamReader(response.GetResponseStream());
    string pagina = resStreamReader.ReadToEnd();

    Il problema è che facendo in questo modo ottengo l'html puro della pagina, invece vorrei avere "l'encoding", per intenderci quello che il browser visualizza, ripulito da tutti i markup e tag html, javascript, .net e compagnia bella.

    Vi viene in mente un modo x effettuare quest'operazione?

    Dev'essere semplice ma non trovo qualche funzione che effettui quest'operazione-

    Grazie, saluti

  2. #2
    bhe... tutti i tag html sono compresi tra i simboli di maggiore e minore ( <input ..> ).
    puoi dire allo script di saltare tutto quello che trova compreso fra i segni di maggiore e minore.
    anche se probabilmente ci sarà qualche funzione per fare il parsing dell'html.
    Guadagnare soldi guardando semplici pagine web?? (niente pop-ups, virus ecc)
    Ecco come Bux.to

  3. #3
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    con le regex...
    I got the remedy

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    7
    Ho risolto, grazie a tutti, ma vi voglio sottoporre un problema più "grosso".

    Non è possibile effettuare con l'HttpWebResponse il parsing della stessa pagina che si sta "caricando" (in fondo questo è abbastanza ovvio, ogni volta genera un'ulteriore request della pagina stessa ed entra in un loop infinito ^^).

    Conoscete un modo diverso per accedere al codice html della pagina senza usare l'HttpWebResponse?

    Attualmente:

    if (Page.IsPostBack != true)
    {
    string url = this.Request.Url.ToString();
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    response = (HttpWebResponse)request.GetResponse();
    }

    StreamReader resStreamReader = new StreamReader(response.GetResponseStream());
    pagina = resStreamReader.ReadToEnd();

    Ho provato anche ad utilizzare il metodo BeginGetResponse della request (ometto il codice xk è molto lungo ma è cmq reperibile sulla msdn) per effettuare una richiesta asincrona, ma non funziona nemmeno quello ^^

    Qualora non fossi stato chiaro volevo rimarcare che funziona tutto perfettamente se l'url è un indirizzo diverso dalla pagina in cui è istanziato il web control, solo che io ho la necessità di generare la tag cloud della keyword density per la pagina dov'è contenuto questo control (anche xk non credo che serva a nulla visualizzare la tag cloud di un'altra pagina!!).

    Meglio di così non mi so spiegare sorry ^^

  5. #5
    prova a vedere tra le varie funzioni legate all'oggetto Response...

    tipo Response.Output
    Guadagnare soldi guardando semplici pagine web?? (niente pop-ups, virus ecc)
    Ecco come Bux.to

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    7
    Originariamente inviato da Tony512
    prova a vedere tra le varie funzioni legate all'oggetto Response...

    tipo Response.Output
    putroppo il loop avviene ancor prima che l'oggetto response venga istanziato, anzi per la precisione all'invocazione del metodo request.GetResponse(); per istanziare il response stesso ^^

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.