Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/251: Рейтинг темы: голосов - 251, средняя оценка - 4.53
10 / 12 / 2
Регистрация: 13.01.2010
Сообщений: 363

Получить HTML код страницы

03.04.2010, 15:54. Показов 49759. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Просто получить HTML код страницы и записать в string.
Объясните нубу, как это сделать?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.04.2010, 15:54
Ответы с готовыми решениями:

Как используя WebResponse и WebRequest получить исходный html код страницы zakupki.gov.ru
Здравствуйте. Подскажите пожалуйста как передать строку с помощью WebResponse + WebRequest и получить исходный код страницы. Я находил...

Поправьте код для парсинга HTML-страницы
<tr class="itr"> <td class="itdh" align="center">4</td> <td class="itd_lb" width="33%" nowrap align="left"> <a...

Как и чем распарсить код Html-страницы
Доброе время суток! Вот допустим, в html документе есть слово Транспорт, после которого идет такая строка <span...

10
 Аватар для HIMen
4340 / 1509 / 101
Регистрация: 12.04.2009
Сообщений: 2,342
03.04.2010, 21:13
Лучший ответ Сообщение было отмечено как решение

Решение

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    static string getResponse(string uri)
    {
        StringBuilder sb = new StringBuilder();
        byte[] buf = new byte[8192];
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Stream resStream = response.GetResponseStream();        
        int count = 0;
        do
        {
            count = resStream.Read(buf, 0, buf.Length);
            if (count != 0)
            {                
                sb.Append(Encoding.Default.GetString(buf, 0, count));
            }
        }
        while (count > 0);
        return sb.ToString();
    }
12
9 / 9 / 1
Регистрация: 30.11.2010
Сообщений: 27
08.12.2010, 08:38
а как теперь сделать тоже самое, но сайт защищен ntlm авторизацией, логин и пароль есть.
0
 Аватар для MrAnger
6 / 6 / 2
Регистрация: 29.11.2010
Сообщений: 85
08.12.2010, 22:51
в гугле же все есть

 Комментарий модератора 
Не отсылайте других пользователей в поиск и избегайте ссылок на поисковые системы (Google, Yandex и др.). Самостоятельно найдите ответ на вопрос и разместите его на форуме
0
9 / 9 / 1
Регистрация: 30.11.2010
Сообщений: 27
09.12.2010, 11:54
Цитата Сообщение от MrAnger Посмотреть сообщение
в гугле же все есть
сцылку из гугла плизки?

C#
1
2
3
String MyURI = "http://www.contoso.com/";
WebRequest WReq = WebRequest.Create (MyURI);
WReq.Credentials = CredentialCache.DefaultCredentials;
(C)http://msdn.microsoft.com/en-u... 437c8.aspx

Как это применить? где логин и пароль вводить? как редиректится после аутентификации??

C#
1
2
3
4
String MyURI = "http://www.contoso.com/";
WebRequest WReq = WebRequest.Create (MyURI);
WReq.Credentials = 
    new NetworkCredential(UserName, SecurelyStoredPassword, Domain);
тут я как понял можно ввести только один раз, а если надо авторизоваться на одной странице, потом собирать инфу с других??
2
 Аватар для cpentyc
48 / 47 / 4
Регистрация: 26.05.2010
Сообщений: 230
16.01.2011, 00:08
смотреть
3
МИР ВАШЕМУ ДОМУ!!!
57 / 58 / 7
Регистрация: 01.04.2009
Сообщений: 890
Записей в блоге: 1
12.12.2011, 14:55
К примеру мне нужно вывести только таблицу и содержащиеся в ее tr данных как быть тут?
Поместить эти данные в грид виеф?
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
12.12.2011, 16:37
C#
1
2
3
var webClient = new System.Net.WebClient();
webClient.Credentials = new System.Net.NetworkCredential("login", "password");
string HTML = webClient.DownloadString("http://sitename.ru");
2
1 / 1 / 0
Регистрация: 12.06.2014
Сообщений: 19
13.10.2017, 17:49
Спасибо.
0
6 / 4 / 3
Регистрация: 23.10.2010
Сообщений: 293
22.09.2018, 17:13
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
static string getResponse(string uri)
    {
        StringBuilder sb = new StringBuilder();
        byte[] buf = new byte[8192];
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Stream resStream = response.GetResponseStream();        
        int count = 0;
        do
        {
            count = resStream.Read(buf, 0, buf.Length);
            if (count != 0)
            {                
                sb.Append(Encoding.Default.GetString(buf, 0, count));
            }
        }
        while (count > 0);
        return sb.ToString();
    }
этот код работает. HIMen, большое спасибо!
Только вопрос, как он работает? Подскажите, пожалуйста, что тут за что отвечает? Что это за магическое число 8192?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18291 / 14215 / 5368
Регистрация: 17.03.2014
Сообщений: 28,892
Записей в блоге: 1
23.09.2018, 08:20
Цитата Сообщение от WersaT Посмотреть сообщение
Что это за магическое число 8192?
Это размер буфера для чтения данных.

Цитата Сообщение от WersaT Посмотреть сообщение
этот код работает.
Но написан он плохо. Потоки и HttpWebResponse нужно "закрыть". Лучше взять пример sau с использованием WebClient или переписать код HIMen так:
C#
1
2
3
4
5
6
7
8
9
10
static string getResponse(string uri)
{
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
    request.UserAgent = "My applicartion name";
    using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
    using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default, true, 8192))
    {
        return reader.ReadToEnd();
    }
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.09.2018, 08:20
Помогаю со студенческими работами здесь

Получить html код в utf-8
отправляю get запрос к сайту StreamWriter sw = File.CreateText("index.html"); http.Method = "GET"; http =...

Получить код страницы с вебсайта (SPA)
После скачивания страницы запускается javascript, который изменяет html. Мне нужен итоговый html.

Получить весь текст HTML-страницы, который находится между тегами, кроме заголовка
Здравствуйте, возникла задача отпарсить html. Конкретно, взять весь текст, который находится между тегами, кроме заголовка. Нужно написать...

Функция, которая достаёт из массива байтов HTML код самой страницы, распаковав его gzip
Я получаю ответ от сайта в виде массива байтов (вместе со всеми заголовками). Мне необходимо из всего этого достать HTML код. Всё бы было...

Как получить html-код в Post-запросе вместо массива байтов
Добрый Есть такая проблема ,делаю GET запрос ,в ответ вместо html кода приходит какой то контент в двоичном виде . Через сниффер вижу во...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru