Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
107 / 13 / 7
Регистрация: 06.07.2013
Сообщений: 266
1

HtmlAgilityPack как парсить сайт с протоколом https если без "правильных" cookie сервер отдает не всю страницу

25.12.2014, 14:53. Показов 2490. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Хотел вытаскивать определенную информацию с одного из сайтов mail при помощи HtmlAgilityPack но возникло несколько проблем. При запросе к главной странице сайта возвращается далеко не все, по сути только информация которая дается не авторизованному пользователю, а скрипт авторизации с полями логина и пароля вообще не приходит. Если заранее авторизоваться и заходить на ту страницу которая мне необходима то там приходит вообще не он а ответ с символами в неправильной кодировке и двумя словами JavaScript и cookie. Решил эти 2 проблемы подключив библиотеку WatiN и беру html уже из объекта brauser этой библиотеки тогда все работает. Но хотелось бы получать страницы без открытия IE. На stackoverflow.com советовали включить cookie в HtmlAgilityPack таким способом:
C#
1
2
3
4
5
6
7
8
9
10
var url = "http://www.prettygreen.com/";
var htmlWeb = new HtmlWeb();
htmlWeb.PreRequest += request =>
    {
        request.CookieContainer = new System.Net.CookieContainer();
        return true;
    };
var htmlDoc = htmlWeb.Load(url);
var outerHtml = htmlDoc.DocumentNode.OuterHtml;
Assert.AreNotEqual("", outerHtml);
Не помогло. Но сдесь используется класс CookieContainer могули я в него каким то образом подложить те cookie которые есть в моем браузере после обычного входа на сайт?
Заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.12.2014, 14:53
Ответы с готовыми решениями:

Nginx отдает не всю страницу
Здравствуйте, Сервер CentOS 6.3 NginX nginx-1.0.15-4 Apache 2.2.15-26 nginx в качестве...

Удалить страницу из индекса с протоколом https
добрый день имеем страницу с защищенным ssl сертификатом. Страница болтается в индексе. В роботсе...

HtmlAgilityPack не отдает текст, если он уже встречался в строке
таблица состоит из таких строк Добавлено через 7 минут таблица состоит из таких строк <tr...

Не могу зайти с macOS на сайт с протоколом соединения https://
Через браузеры Safari и GChroom не удается зайти на сайт с защищенным соединением, везде сообщение...

1
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
26.12.2014, 02:54 2
ATop, афайк нужно сначала залогиниться, получив куки от сервера, то есть
C#
1
2
3
4
var cc = new CookieContainer();
var request = WebRequest.Create("...");
request.CookieContainer = cc;
var resp = request.GetResponse(); // теперь куки заполнены, используем их для дальнейших запросов
но если логин исключительно по JS-происходит, тогда без WebClient или этой вашей библиотеки, то есть полноценного браузерного движка, не обойтись.
0
26.12.2014, 02:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.12.2014, 02:54
Помогаю со студенческими работами здесь

Как парсить сайт без бана?
Есть необходимость вытаскивать расписание с сайта. Надо выкачать порядка 100 страниц. Как...

Страница https:// .не печатает всю страницу, а только её часть?
Уважаемые форумчане! Объясните мне почему указанный код VBA не печатает всю страницу, а только её...

Как с htmlagilitypack парсить комментарии к коду?
Нужно парсить текст находящийся в тегах <!-- -->

404 при том что сервер корректно отдает страницу (nginx+apache)
Столкнулся с такой проблематикой: На веб-сервере работает несколько сайтов и один из них,...

HtmlAgilityPack в WP7: как правильно парсить страницы
Всем привет! При парсировании страницы в мобильном приложении столкнулся с тем,что не могу...

Как проксировать чужой сайт (https) через свой сервер (домен)?
Добрый день. Есть свой домен, хостинг (на нём nginx) и пустой index.html (все доступы/управлялки)....

Как с парсить ? https://www.partslink24.com
Добрый день. Ситуация. Залогинивает только с одного браузера одной машины, с других браузеров или...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru