Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Importare html con Microsoft.XMLHTTP ma restituisce nel testo quadratini

    Ciao a tutti
    ho il seguente problema

    Ho necessità di importare del testo da un'altro sito web ma quando lo inserisco nel label mi restituisce dei quadratini che vanno a sostituire le lettere accentate e così via.
    Vi posto il codice di esempio che sto sviluppando


    Dim objXMLHTTP = CreateObject("Microsoft.XMLHTTP")

    objXMLHTTP.Open("GET", "http://www.oroscopi.com/oroscopo/oroscopo_giorno.php?segno=Cancro", False)

    objXMLHTTP.Send()
    Dim x
    Dim y
    Dim str As String = CStr(objXMLHTTP.ResponseText)

    x = InStr(1, str, UCase("<div class=""oroscopo"">"), 1)
    y = InStr(1, str, UCase("<div class=""footer"">"), 1)

    Dim s

    s = y - x
    Dim StringaTroncata = Mid(str, x, s)

    Label1.Text = StringaTroncata


    ECCO IL TESTO CHE MI RESTITUISCE:
    In questo Luned�ovrete essere maggiormente pragmatici. E' ci�e vi consiglia la Luna e una Venere in Ariete che vi rende un po' pi�i per le cose che dovrete realizzare. Evitate le spese eccessive e proiettatevi sul presente e su quello che c'�ealmente da fare!

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Non ho provato, ma prova nel page_load con:

    codice:
    Response.ContentEncoding = System.Text.Encoding.Default
    ..o prova a leggere questo

  3. #3
    Grazie djciko

    ma inserendo quel codice i quadratini scompaiono ma mi tronca le parole!
    Il problema sta nelle lettere accentate...!

    Ecco cosa mi restituisce:
    La giornata si presenta all'insegna della praticit?Dovrete avere chiaro ci?e volete portare avanti. Venere in Ariete vi d?l via alla grinta, per portare avanti i vostri progetti. E se coglierete al balzo le opportunit?otrete rinnovarvi nel vero senso del termine. Occhi aperti.

    Il testo originale è questo:
    La giornata si presenta all'insegna della praticità. Dovrete avere chiaro ciò che volete portare avanti. Venere in Ariete vi dà il via alla grinta, per portare avanti i vostri progetti. E se coglierete al balzo le opportunità potrete rinnovarvi nel vero senso del termine. Occhi aperti.

    Vedi mi sostituisce le parole accentate ed il carattere successivo con i punti interrogativi.

    Non so proprio come risolvere questo arcano!!!

  4. #4
    ho provato anche con

    objXMLHTTP.setRequestHeader("Content-Type", "content=text/html; charset=iso-8859")

    ma non finziona

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Quel sito è codificato in UTF7. Usa qualcosa di simile

    codice:
            Dim objWebClient As New System.Net.WebClient
            Dim url As String = "http://www.oroscopi.com/oroscopo/oroscopo_giorno.php?segno=Cancro"
            Dim codec As New System.Text.UTF7Encoding()
            Dim html As String = codec.GetString(objWebClient.DownloadData(url))
    
            Dim s1 As String = "<div class=""oroscopo"">"
            Dim s2 As String = "</div>"
            Dim s12 As String = ""
            Dim x As Integer = html.IndexOf(s1)
            Dim y As Integer = html.IndexOf(s2, x)
            If x > -1 AndAlso y > -1 Then
                x += s1.Length
                s12 = html.Substring(x, y - x)
            End If
            s12 = s12.Replace("/cm/img/segni/big/cancro.gif", "cancro.gif")
            'Literal1.Text = "<pre>" & Server.HtmlEncode(s12) & "</pre>"
            Literal1.Text = s12
    Pietro

  6. #6

    PERFETTOOOOOOOOO
    GRAZIE

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da doals

    PERFETTOOOOOOOOO
    GRAZIE
    :quote: Daccordo, ma per gli oroscopi mi pare sprecato :master: .

    Io metterei un centinaio di oroscopi in un database e gli estrarrei in modo casuale :master:

    Il risulstato dovrebbe essere, più o meno lo stesso

    Pietro

  8. #8
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Originariamente inviato da pietro09
    :quote: Daccordo, ma per gli oroscopi mi pare sprecato :master: .

    Io metterei un centinaio di oroscopi in un database e gli estrarrei in modo casuale :master:

    Il risulstato dovrebbe essere, più o meno lo stesso


  9. #9
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da djciko
    Visto che sei in onda, non è che sai come scoprire come è codificato un sito esterno?
    Pietro

  10. #10
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Per completezza, aggiungo l'autenticazione per chi è dietro un proxy:

    codice:
            Dim webproxy As New WebProxy("nomeproxy", numeroPorta)
            Dim credenziali As New NetworkCredential("userid", "password", "dominio")
            
            objWebClient.Proxy = webproxy
            objWebClient.Proxy.Credentials = credenziali
    pietro: no, ma ora mi hai incuriosito. cerco

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.