none
RECUPERER LE CONTENU D'UNE PAGE VB.NET RRS feed

  • Question

  • Bonjour,
    Je vous souhaite une bonne journée.

    je voudrais vous demander votre aide sur le problème suivant:
    je suis en train de faire un programme qui me permet d'automatiser le téléchargement des fichiers. alors j'arrive via le code ci-dessous à accéder à la page de téléchargement, et récupérer le lien du fichier à télécharger. le problème c'est lorsque j'execute le code en local, il m'affiche l'erreur suivante "The page cannot be found". et je trouve sur la barre url ceci:

    http://localhost/subDerct/file_pdfs?pdf=sd_tyj4qf58D1LKZEOJC0RCw3LPFJKqPQfhpmrbo6kZUYTl7QhiJi7f5bTJXlwjh5mpd8szfhv2gpw6f

    Alors que lorsque je tape le lien: http://monsite/subDerct/file_pdfs?pdf=sd_tyj4qf58D1LKZEOJC0RCw3LPFJKqPQfhpmrbo6kZUYTl7QhiJi7f5bTJXlwjh5mpd8szfhv2gpw6f

    il me redirige vers le fichier à télécharger

            Dim _wReq As HttpWebRequest
            Dim _wResp As HttpWebResponse
            Dim _sr As System.IO.StreamReader
            Dim _enc As New System.Text.ASCIIEncoding()
            Dim _cookies As CookieContainer
            _wReq = DirectCast(WebRequest.Create(MONURL), HttpWebRequest)
            _wReq.CookieContainer = New CookieContainer()
            _wReq.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1"
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
            
            _cookies = _wReq.CookieContainer
            _wResp.Close()
    	Dim balisepdf As String = "LINK "
            Dim parpdf As String() = Split(_respStr, balisepdf)
            parpdf = Split(parpdf(1), ";")
            
            _cookies = _wReq.CookieContainer
            Dim _postData3 As [String] = ""
            Dim _data3 As Byte() = _enc.GetBytes(_postData3)
            _urlPDF = "" + parpdf(0).ToString()
            
            _uriPDF = New Uri(_urlPDF)
            _wReq = DirectCast(WebRequest.Create(_uriPDF), HttpWebRequest)
            _wReq.Accept= "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
            _wReq.Referer = _urlPDF
            _wReq.KeepAlive = True
            _wReq.Method = "POST"
            _wReq.CookieContainer = _cookies
            _wReq.AllowAutoRedirect = False
            Dim _outStream3 As System.IO.Stream = _wReq.GetRequestStream()
            _outStream3.Write(_data3, 0, _data3.Length)
            _outStream3.Close()
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
            
            _wResp.Close()
            Label1.Text = _respStr

    • Type modifié Aurel Bera jeudi 27 septembre 2012 14:10 Pas de reponse
    • Type modifié Yanese mercredi 3 octobre 2012 09:32
    vendredi 21 septembre 2012 11:31

Réponses

  • Bonjour,

    je suis désolé pour ce retard.

    J'arrive à résoudre le problème. voici mon code final:

    Dim _wReq As HttpWebRequest
            Dim _wResp As HttpWebResponse
            Dim _sr As System.IO.StreamReader
            Dim _enc As New System.Text.ASCIIEncoding()
            Dim _cookies As CookieContainer
            _wReq = DirectCast(WebRequest.Create(MONURL), HttpWebRequest)
            _wReq.CookieContainer = New CookieContainer()
            _wReq.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1"
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
            
            _cookies = _wReq.CookieContainer
            _wResp.Close()
       While (_respStr.Contains("LINK?"))
    	Dim balisepdf As String = "LINK?"
            Dim parpdf As String() = Split(_respStr, balisepdf)
            parpdf = Split(parpdf(1), ";")
            
            _cookies = _wReq.CookieContainer
            Dim _postData3 As [String] = ""
            Dim _data3 As Byte() = _enc.GetBytes(_postData3)
            _urlPDF = "MONURL?" + parpdf(0).ToString()
            
            _uriPDF = New Uri(_urlPDF)
            _wReq = DirectCast(WebRequest.Create(_uriPDF), HttpWebRequest)
            _wReq.Accept= "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
            _wReq.Referer = _urlPDF
            _wReq.KeepAlive = True
            _wReq.Method = "POST"
            _wReq.CookieContainer = _cookies
            _wReq.AllowAutoRedirect = False
            Dim _outStream3 As System.IO.Stream = _wReq.GetRequestStream()
            _outStream3.Write(_data3, 0, _data3.Length)
            _outStream3.Close()
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
        End While
            _wResp.Close()

    • Marqué comme réponse Yanese mercredi 3 octobre 2012 09:32
    mercredi 3 octobre 2012 09:30

Toutes les réponses

  • Bonjour,
    Je vous souhaite une bonne journée.

    je voudrais vous demander votre aide sur le problème suivant:
    je suis en train de faire un programme qui me permet d'automatiser le téléchargement des fichiers. alors j'arrive via le code ci-dessous à accéder à la page de téléchargement, et récupérer le lien du fichier à télécharger. le problème c'est lorsque j'execute le code en local, il m'affiche l'erreur suivante "The page cannot be found". et je trouve sur la barre url ceci:

    http://localhost/subDerct/file_pdfs?pdf=sd_tyj4qf58D1LKZEOJC0RCw3LPFJKqPQfhpmrbo6kZUYTl7QhiJi7f5bTJXlwjh5mpd8szfhv2gpw6f

    Alors que lorsque je tape le lien: http://monsite/subDerct/file_pdfs?pdf=sd_tyj4qf58D1LKZEOJC0RCw3LPFJKqPQfhpmrbo6kZUYTl7QhiJi7f5bTJXlwjh5mpd8szfhv2gpw6f

    il me redirige vers le fichier à télécharger

            Dim _wReq As HttpWebRequest
            Dim _wResp As HttpWebResponse
            Dim _sr As System.IO.StreamReader
            Dim _enc As New System.Text.ASCIIEncoding()
            Dim _cookies As CookieContainer
            _wReq = DirectCast(WebRequest.Create(MONURL), HttpWebRequest)
            _wReq.CookieContainer = New CookieContainer()
            _wReq.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1"
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
            
            _cookies = _wReq.CookieContainer
            _wResp.Close()
    	Dim balisepdf As String = "LINK "
            Dim parpdf As String() = Split(_respStr, balisepdf)
            parpdf = Split(parpdf(1), ";")
            
            _cookies = _wReq.CookieContainer
            Dim _postData3 As [String] = ""
            Dim _data3 As Byte() = _enc.GetBytes(_postData3)
            _urlPDF = "" + parpdf(0).ToString()
            
            _uriPDF = New Uri(_urlPDF)
            _wReq = DirectCast(WebRequest.Create(_uriPDF), HttpWebRequest)
            _wReq.Accept= "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
            _wReq.Referer = _urlPDF
            _wReq.KeepAlive = True
            _wReq.Method = "POST"
            _wReq.CookieContainer = _cookies
            _wReq.AllowAutoRedirect = False
            Dim _outStream3 As System.IO.Stream = _wReq.GetRequestStream()
            _outStream3.Write(_data3, 0, _data3.Length)
            _outStream3.Close()
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
            
            _wResp.Close()
            Label1.Text = _respStr

    Bonjour,

    Vous avez oublié de mettre l'extension .aspx dans votre URL.

    http://localhost/subDerct/file_pdfs?pdf=sd_tyj4qf58D1LKZEOJC0RCw3LPFJKqPQfhpmrbo6kZUYTl7QhiJi7f5bTJXlwjh5mpd8szfhv2gpw6f

    http://localhost/subDerct/file_pdfs.aspx?pdf=sd_tyj4qf58D1LKZEOJC0RCw3LPFJKqPQfhpmrbo6kZUYTl7QhiJi7f5bTJXlwjh5mpd8szfhv2gpw6f

    Pouvez-vous faire le test svp ?


    Merci de valider par "Proposer comme réponse" si celle-ci répond a votre demande !

    • Proposé comme réponse EhJoe mardi 25 septembre 2012 06:04
    vendredi 21 septembre 2012 12:17
  • Bonjour,

    Est-ce que vous avez testé les solutions proposées ? Merci de partager avec nous les résultats, afin que d'autres personnes avec le même problème puissent profiter de cette solution.

    Cordialement,

    Aurel


    Aurel BERA, Microsoft
    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    mardi 25 septembre 2012 08:25
  • Bonjour,

    Nous changeons le type de votre question à « Discussion générale » parce que vous n’êtes pas revenu avec les informations sollicitées. Si vous avez plus de temps pour réexaminer la question et fournir plus d'informations, n'hésitez pas à modifier le type du thread à « Question ». Si le problème est résolu, s’il vous plaît partagez la solution avec nous afin que la réponse puisse être trouvée et utilisée par d'autres membres de la communauté ayant des questions similaires.

    Merci !

    Cordialement,

    Aurel


    Aurel BERA, Microsoft
    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    jeudi 27 septembre 2012 14:10
  • Bonjour,

    je suis désolé pour ce retard.

    J'arrive à résoudre le problème. voici mon code final:

    Dim _wReq As HttpWebRequest
            Dim _wResp As HttpWebResponse
            Dim _sr As System.IO.StreamReader
            Dim _enc As New System.Text.ASCIIEncoding()
            Dim _cookies As CookieContainer
            _wReq = DirectCast(WebRequest.Create(MONURL), HttpWebRequest)
            _wReq.CookieContainer = New CookieContainer()
            _wReq.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1"
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
            
            _cookies = _wReq.CookieContainer
            _wResp.Close()
       While (_respStr.Contains("LINK?"))
    	Dim balisepdf As String = "LINK?"
            Dim parpdf As String() = Split(_respStr, balisepdf)
            parpdf = Split(parpdf(1), ";")
            
            _cookies = _wReq.CookieContainer
            Dim _postData3 As [String] = ""
            Dim _data3 As Byte() = _enc.GetBytes(_postData3)
            _urlPDF = "MONURL?" + parpdf(0).ToString()
            
            _uriPDF = New Uri(_urlPDF)
            _wReq = DirectCast(WebRequest.Create(_uriPDF), HttpWebRequest)
            _wReq.Accept= "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
            _wReq.Referer = _urlPDF
            _wReq.KeepAlive = True
            _wReq.Method = "POST"
            _wReq.CookieContainer = _cookies
            _wReq.AllowAutoRedirect = False
            Dim _outStream3 As System.IO.Stream = _wReq.GetRequestStream()
            _outStream3.Write(_data3, 0, _data3.Length)
            _outStream3.Close()
            _wResp = DirectCast(_wReq.GetResponse(), HttpWebResponse)
            _sr = New System.IO.StreamReader(_wResp.GetResponseStream())
            _respStr = _sr.ReadToEnd()
            _sr.Close()
        End While
            _wResp.Close()

    • Marqué comme réponse Yanese mercredi 3 octobre 2012 09:32
    mercredi 3 octobre 2012 09:30