Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Webrequest et Localisation

2 réponses
Avatar
Alex
Bonjour à tous,

J'utilise le code suivant pour récupérer le code source d'une page web :

Public Function GetSourcePage(ByVal Url As String) As String
Dim result As HttpWebResponse
Dim contenu As String
result = Nothing
Try

Dim req As WebRequest = WebRequest.Create(Url)


result = req.GetResponse
Dim ReceiveStream As Stream
ReceiveStream = result.GetResponseStream
Dim sr As StreamReader = New StreamReader(ReceiveStream,
System.Text.Encoding.Default)
contenu = sr.ReadToEnd

Catch ex As Exception
contenu = ""
Finally
result.Close()
End Try
Return contenu

End Function

Le soucis est que la page est générée suivant la localisation du navigateur
qui est censé lire la page. Je n'ai pas trouvé comment modifier la
WebRequest de facon à "simuler" un navigateur pour une localisation donnée.

auriez-vous une piste ?

Merci d'avance pour vos réponses.

2 réponses

Avatar
Gilles TOURREAU
Le Fri, 21 Sep 2007 19:33:03 +0200, Alex a écrit:

Bonjour à tous,

J'utilise le code suivant pour récupérer le code source d'une page web :

Public Function GetSourcePage(ByVal Url As String) As String
Dim result As HttpWebResponse
Dim contenu As String
result = Nothing
Try

Dim req As WebRequest = WebRequest.Create(Url)


result = req.GetResponse
Dim ReceiveStream As Stream
ReceiveStream = result.GetResponseStream
Dim sr As StreamReader = New StreamReader(ReceiveStream,
System.Text.Encoding.Default)
contenu = sr.ReadToEnd

Catch ex As Exception
contenu = ""
Finally
result.Close()
End Try
Return contenu

End Function

Le soucis est que la page est générée suivant la localisation du
navigateur qui est censé lire la page. Je n'ai pas trouvé comment
modifier la WebRequest de facon à "simuler" un navigateur pour une
localisation donnée.

auriez-vous une piste ?

Merci d'avance pour vos réponses.



Je ne suis pas spécialiste HTTP, mais avez vous essayé d'ajouter l'entête
suivant :

req.Headers.Add("Accept-Language", "fr")

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Avatar
Alex
Merci c'est effectivement la solution à mon problème ^^
Je ne suis moi non plus pas très familier avec le HTTP, c'est pourquoi je
n'ai absolument pas pensé à spécifié l'entête ...

Merci encore !

"Gilles TOURREAU" a écrit dans le message de
news:
Le Fri, 21 Sep 2007 19:33:03 +0200, Alex a écrit:

Bonjour à tous,

J'utilise le code suivant pour récupérer le code source d'une page web :

Public Function GetSourcePage(ByVal Url As String) As String
Dim result As HttpWebResponse
Dim contenu As String
result = Nothing
Try

Dim req As WebRequest = WebRequest.Create(Url)


result = req.GetResponse
Dim ReceiveStream As Stream
ReceiveStream = result.GetResponseStream
Dim sr As StreamReader = New StreamReader(ReceiveStream,
System.Text.Encoding.Default)
contenu = sr.ReadToEnd

Catch ex As Exception
contenu = ""
Finally
result.Close()
End Try
Return contenu

End Function

Le soucis est que la page est générée suivant la localisation du
navigateur qui est censé lire la page. Je n'ai pas trouvé comment
modifier la WebRequest de facon à "simuler" un navigateur pour une
localisation donnée.

auriez-vous une piste ?

Merci d'avance pour vos réponses.



Je ne suis pas spécialiste HTTP, mais avez vous essayé d'ajouter l'entête
suivant :

req.Headers.Add("Accept-Language", "fr")

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr