есть сайт 3akachay.com, нужно зайти на него именно на страницу регистрации, принять правила и получить весь HTML код страницы, все бы не чего но страница получается не вся, а только её часть
вот, что я делаю:
HttpWebRequest myHttpWebRequest =
(HttpWebRequest)HttpWebRequest.Create("http://" + strURL + "/index.php?do=register");
//Инициализация параметров для выполнения запроса
myHttpWebRequest.Method = "POST";
myHttpWebRequest.Host = strURL;
myHttpWebRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0";
myHttpWebRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
myHttpWebRequest.Referer = "http://" + strURL + "/index.php?do=register";
myHttpWebRequest.Headers.Add("Accept-Language", "ru");
// myHttpWebRequest.Headers.Add("Accept-Encoding", "gzip");
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded";
try//Возможно сервер в данный момент не работает
{
//Сформировать параметры для успешного выполнения POST запроса (Т.е Нажать на кнопку прочитал правила, СОГЛАСЕН)byte[] SomeBytes = null;
string postData = "dle_rules_accept=yes";
SomeBytes = Encoding.UTF8.GetBytes(postData);
myHttpWebRequest.ContentLength = SomeBytes.Length;
Stream newStream = myHttpWebRequest.GetRequestStream();
newStream.Write(SomeBytes, 0, SomeBytes.Length);
newStream.Close();
}
catch (WebException e) //Если сайт не работает, то пока вывести предупреждение
{
MessageBox.Show(e.Message);
return -1;
;
}
HttpWebResponse res = (HttpWebResponse)myHttpWebRequest.GetResponse();
string find_text = new StreamReader(res.GetResponseStream(), Encoding.GetEncoding("windows-1251")).ReadToEnd();
Здравствуйте, dimawork1989, Вы писали:
D>В результате получается не весь HTML код страницы D>проверял полученный код , он ровно до конца этого модуля (таблицы) дальше HTML код отсутствует.
Как вариант, ублюдочный жабоскрипт сам закачивает контент и подменяет его в каком-нибудь DIV'е (в браузере).
Re: C# HttpWebRequest и HttpWebResponse. Не могу получить весь код HTM страницы
Здравствуйте, dimawork1989, Вы писали:
D>В результате получается не весь HTML код страницы D>проверял полученный код , он ровно до конца этого модуля (таблицы) дальше HTML код отсутствует.
Как вариант, ублюдочный жабоскрипт сам закачивает контент и подменяет его в каком-нибудь DIV'е (в браузере).
Re[2]: C# HttpWebRequest и HttpWebResponse. Не могу получить весь код HTM страни
Здравствуйте, dimawork1989, Вы писали:
D>есть сайт 3akachay.com, нужно зайти на него именно на страницу регистрации, принять правила и получить весь HTML код страницы, все бы не чего но страница получается не вся, а только её часть D>вот, что я делаю:
Сразу вопрос дня: вы http://fiddlertool.com уже поставили?
На трафик между браузером и сайтом посмотрели? С трафиком своего приложения сравнили?
В чем разница, обнаружили?
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re: C# HttpWebRequest и HttpWebResponse. Не могу получить весь код HTM страницы
Делов в том, что если этот сайт загружать через встроенный webbrauser С# и выводить код страницы, то в нем все верно, а через запросы HttpWebRequest проблема
Re[2]: C# HttpWebRequest и HttpWebResponse. Не могу получить весь код HTM страни
Здравствуйте, dimawork1989, Вы писали:
D>Делов в том, что если этот сайт загружать через встроенный webbrauser С# и выводить код страницы, то в нем все верно, а через запросы HttpWebRequest проблема
HttpWebRequest это не тоже самое что Webbrowser.
HttpWebRequest не выполняет скриптов, не делает редиректов, не хостит ActiveX, Java, Flash etc.
Re: C# HttpWebRequest и HttpWebResponse. Не могу получить весь к
для таких случаев лучше иcпользовать платный http request провайдер — не помню как он называется я его несколько лет назад использовал 1 раз чтобы добиться соответствия браузерных запросов и aspnet запросов, тк httpwebrequest не позволяет некоторые http header'ы отправлять. или подключить fiddler и у него в скрипте прописать все недостающие части request, тогда можно добиться соответствия браузерных запросов и httpwebrequest запросов 1 к 1. самое поганое что в случае ajax надо будет самому вычислять параметры если сайт не поддерживает nojavascript режим, для этого можно парсить сайт через HtmlAgilityPack