Не удается загрузить веб-страницу через веб-клиент C# и через запрос / ответ

Я хочу скачать HTML-код веб-страниц, но есть проблемы с несколькими ссылками. Например: http://www.business-top.info/, http://azerizv.az/ Я не получаю html вообще, используя это: 1. WebClient:

using (var client = new WebClient())
            {
                client.Encoding = System.Text.Encoding.UTF8;
                string result = client.DownloadString(resultUrl);
                Console.WriteLine(result);
                Console.ReadLine();
            }

2. HTTP запрос / ответ

var request = (HttpWebRequest)WebRequest.Create(resultUrl);
            request.Method = "POST";
            using (var response = (HttpWebResponse)request.GetResponse())
            {
                using (var stream = response.GetResponseStream())
                {
                    StreamReader sr = new StreamReader(stream, Encoding.UTF8);
                    string data = sr.ReadToEnd();
                    Console.WriteLine(data);
                    Console.ReadLine();
                }
            }

Таких ссылок много, поэтому я не могу скачать html вручную только через исходный код веб-страницы через браузер

1 ответ

Решение

Некоторые страницы загружаются поэтапно. Сначала они загружают ядро ​​страницы, и только потом они оценивают любой JavaScript-код внутри, который загружает дополнительный контент через AJAX. Для очистки этих страниц вам понадобятся более продвинутые библиотеки очистки содержимого, чем просто отправитель HTTP-запроса.

РЕДАКТИРОВАТЬ: Вот вопрос в SO о той же проблеме, что и у вас сейчас: Jquery Ajax Соскреб веб-страницы с помощью C#

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