Visualizzazione dei risultati da 1 a 8 su 8

Discussione: [xmlhttp] ResponseText

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150

    [xmlhttp] ResponseText

    Ciao a tutti,
    attraverso la lettura di vari thread in proposito presenti su questo forum, da pochi giorni sono riuscito ad utilizzare l'oggetto xmlhttp per recuperare le informazioni presenti su un link esterno.

    Funziona tutto a meraviglia (vi posto il codice inserito)

    <%
    vc_url = "http://www.repubblica.it/index.php"
    Set xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP")

    xmlhttp.Open "GET", vc_url, False
    xmlhttp.Send

    'quì recupero il contenuto testuale
    pagetxt = CStr(xmlhttp.ResponseText)

    response.write "Testo-->"&pagetxt

    'quì controllo lo stato della pagina
    pagestatus = xmlhttp.Status
    Set xmlhttp = Nothing

    'se lo stato della richiesta è = 200 allora la pagina è disponibile

    If CInt(pagestatus) = 200 Then
    FileExist = true
    response.write "Il file esiste"
    Else
    FileExist = false
    response.write "Il file non esiste"
    end if
    %>
    Però avrei bisogno di un chiarimento

    E' possibile recuperare il codice html/asp/php (in formato testo) della pagina invece che visualizzare la pagina stessa?

    Ho provato visualizzando sia pagine in "puro" html che altre di vari linguaggi, ma il risultato purtroppo è sempre lo stesso, ovvero mi visualizza la pagina (chiaramente escluse le immagini).

    Il testo della pagina lo devo inserire in un campo Clob di una tabella.

    Grazie per qualsiasi suggerimento in merito.



  2. #2
    Con XMLHTTP ottieni il codice che apparirebbe sul browser chiamando la pagina, appunto, sul browser.
    Il codice lato server non lo potrai mai ottenere, perchè il server, ricevuta la richiesta, processa il file e invia il risultato dell'operazione.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150
    Originariamente inviato da Domenix
    Con XMLHTTP ottieni il codice che apparirebbe sul browser chiamando la pagina, appunto, sul browser.
    Il codice lato server non lo potrai mai ottenere, perchè il server, ricevuta la richiesta, processa il file e invia il risultato dell'operazione.
    Quindi non esiste altro metodo per archiviare il codice sorgente/html risultante di una qualsiasi pagina web?

    Grazie della risposta

  4. #4
    Originariamente inviato da mosquito70
    Quindi non esiste altro metodo per archiviare il codice sorgente/html risultante di una qualsiasi pagina web?

    Grazie della risposta
    per fortuna NO!

  5. #5
    Originariamente inviato da mosquito70
    Quindi non esiste altro metodo per archiviare il codice sorgente/html risultante di una qualsiasi pagina web?

    Grazie della risposta
    Il codice HTML si. Quello ASP/PHP/JSP etc, no.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150
    Originariamente inviato da optime
    per fortuna NO!
    Ehm...scusate, ma ho trovato su questo link

    un modo per visualizzarlo

    In effetti sulla pagina .asp dove ho inserito il codice che poi vi posto, mi visualizza il codice html del link esterno, richiamando il metodo direttamente nella response.write con l'aggiunta della la direttiva </xmp> (se ho scritto qualche stupidata, scusate in anticipo )

    Ora se prendo tale valore e lo passo ad una procedura che fa la insert in tabella, dite che funziona? Ovvero, "xmlhttp.ResponseText" è una variabile? e se sì, di che tipo?
    E poi, se estraggo questi valori e li confronto (magari con una funzione asp), delimitandoli ciascuno con <xmp> ...</xmp>, pensate che funzioni?
    (il confronto chiaramente non prevede la presenza di eventuali banner o contatori...ma le pagine che visito sono più semplici di quelle di repubblica )

    <%
    vc_url = "http://www.repubblica.it/index.php"

    Set xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP")

    xmlhttp.Open "GET", vc_url, False
    xmlhttp.Send

    'quì recupero il contenuto testuale
    'pagetxt = CStr(xmlhttp.ResponseText)
    'pagetxt = CStr(xmlhttp.ResponseStream)


    response.write "<xmp>"&xmlhttp.ResponseText&"</xmp>" <---MODIFICA

    'quì controllo lo stato della pagina
    pagestatus = xmlhttp.Status
    Set xmlhttp = Nothing

    'se lo stato della richiesta è = 200 allora la pagina è disponibile
    'response.write "status--->" & pagestatus

    If CInt(pagestatus) = 200 Then
    FileExist = true
    response.write "Il file esiste"
    Else
    FileExist = false
    response.write "Il file non esiste"
    end if
    %>

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150

    Avrei trovato una soluzione...

    ...dico avrei trovato, perchè vorrei da voi qualche consiglio su quello che sto facendo e che attualmente comunque funziona

    Per "funzionare" intendo, che
    1. controllo esistenza indirizzo web
    2. acquisisco codice html risultante (quindi anche se la pagina è scritta in asp, php)
    3. carico questo contenuto in una textarea
    4. inserisco un campo varchar di una tabella (oracle). Per questo passaggio devo ancora provare l'utilizzo dei CLOB, per pagine che contengono più di 4000 caratteri.

    Il codice è il seguente (in rosso indico la parte che potrebbe essere un pò rischiosa).
    (nota. Il controllo della corretta dell'indirizzo lo faccio in fase di inserimento e quindi l'ho tolto).

    <%
    vc_url = "http://www.repubblica.it/index.php"

    Set xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP")

    xmlhttp.Open "GET", vc_url, False
    xmlhttp.Send

    'quì recupero il contenuto testuale
    'response.write "<xmp>"&xmlhttp.ResponseText&"</xmp>"

    %>
    <tr >
    <td class="testolabel">


    <textarea rows="5" cols="200" name="DESC_TEST_CHAR" size="110" value="<%response.write "<xmp>"&xmlhttp.ResponseText&"</xmp>"%>" class="campinull"></textarea>

    </td>
    </tr>
    </table>
    <%

    'quì controllo lo stato della pagina
    pagestatus = xmlhttp.Status
    Set xmlhttp = Nothing
    %>
    Che ne pensate?

    Grazie degli eventuali consigli.
    Intanto procedo su questa strada...


  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150

    Errore msxml3.dll error '80072ee2'

    Riprendo questo thread di qualche settimana fa, per segnalarvi questo errore, dopo il passaggio della funzionalità di estrazione di codice html da un indirizzo web.

    La procedura, testata su Windows Xp, non presenta questo problema, mentre su Windows Server 2003 restituisce questo errore

    msxml3.dll error '80072ee2'

    Ho cominciato a dare un'occhiata ai vari link web e questo mi sembra il più completo, anche se non ho capito molto le soluzioni che propone.
    Riporto dei passaggi

    The timeout is generated by msxml object that is used to load the template file. This usually happen on MS Windows 2003 server when the used template file cannot be properly loaded. Some of the reasons for this behavior could be: template takes too much time to be loaded, the smart mailer is trying to send too many emails or the web server is behind a proxy.
    Solutions:

    1. Try to make asp template to load faster through cutting down your asp code or using some speed tricks.
    2. Don not use session code in global.asa
    3. If your web server is behind a proxy see the following article: http://msdn2.microsoft.com/en-us/library/ms761351.aspx
    4.Disable the session state through adding this line at the top of the asp template file:
    <%@ enablesessionstate="False" %>

    5.Increase the time out. You can do it by adding the following line in /ScriptLibrary/incSmartMailer.asp before line# 1222.
    objHttp.setTimeouts 5000, 60000, 10000, 10000
    Cerco di fare delle prove, anche se in particolare il punto 3, rimane per me abbastanza complicato.
    Nel frattempo a qualcuno è capitata già una situazione simile?

    Grazie per qualsiasi suggerimento.
    Ciao

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 © 2025 vBulletin Solutions, Inc. All rights reserved.