Чтение содержимого сайта и определение кодировки

  Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim Imagelink As String = ""
        Dim Text As String = TextBox1.Text
        Dim request As HttpWebRequest = DirectCast(HttpWebRequest.Create(Text), HttpWebRequest)
        request.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"
        Dim respons As HttpWebResponse
        respons = DirectCast(request.GetResponse(), HttpWebResponse)
        Dim enc As Encoding
        Try
            enc = Encoding.GetEncoding(respons.CharacterSet)
        Catch ex As Exception
            enc = Encoding.GetEncoding("ISO-8859-1")
        End Try

        Dim reader As New StreamReader(respons.GetResponseStream(), enc)
        Dim sr As String = reader.ReadToEnd()

        Dim Pattern As String = "<img([^s]|s[^r]|sr[^c]|src[^=]|src=[^'""])*src=['""](?<SRC>[^'""]*)['""]"
        Dim m As MatchCollection = Regex.Matches(sr, Pattern)
        For Each mm As Match In m
            Dim link_ As String = mm.Groups("SRC").Value
            ' Dim x_ As String = link_.Substring(0, 7)

            If link_.Substring(0, 7) = "http://" Then
                Response.Write(mm.Groups("SRC").Value + "" + "<br>")
                Imagelink = link_
            End If


        Next
        Dim image_ As New Image
        image_.Attributes("src") = Imagelink
        PlaceHolder1.Controls.Add(image_)
    End Sub

Это код, который я использую для отправки запроса на веб-страницу, получения его содержимого и извлечения ссылок с изображения с веб-страницы. Однако на некоторых веб-страницах он не возвращает кодировку в веб-заголовке, который возвращает "". Однако, когда я пытаюсь разобрать кодировку по умолчанию, она тоже не дает нужного содержимого? это действительно разочаровывает, кто-нибудь сталкивался с такой ситуацией раньше? Если бы кто-нибудь мог указать мне правильное направление относительно того, как преодолеть это или предсказать, какую кодировку использовать, это было бы здорово, спасибо.

Пример сайта, который не дает кодировку в заголовке ответа

Имиджевая ссылка на сайт

1 ответ

В этом случае кодировка символов дается в заголовках: Content-Type: text/html; charset=utf-8

Другие вопросы по тегам