Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2011, 19:41   #1
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию Гет запрос

Делаю через httpwebrequest нужно перейти по ссылке http://www.liveinternet.ru/rating/ru...://www.baby.ru
но когда перехожу пишит что "Ничего не найдено", но через браузер все ок.
WebBrowser не предлагать.

Помогите в чем может быть проблема.
Я пробывал так
Код:
  System.Net.WebRequest reqGET = System.Net.WebRequest.Create("http://www.liveinternet.ru/rating/ru/?search=www.baby.ru");
  System.Net.WebResponse resp = reqGET.GetResponse();
  System.IO.Stream stream = resp.GetResponseStream();
  System.IO.StreamReader srr = new System.IO.StreamReader(stream);
  string s = srr.ReadToEnd();

Последний раз редактировалось Cpluser; 08.11.2011 в 20:00.
Cpluser вне форума Ответить с цитированием
Старый 08.11.2011, 20:00   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Код:
// Create a request for the URL. 
			WebRequest request = WebRequest.Create(
			  "http://www.liveinternet.ru/rating/ru/?search=www.baby.ru");
			// If required by the server, set the credentials.
			request.Credentials = CredentialCache.DefaultCredentials;
			// Get the response.
			WebResponse response = request.GetResponse();
			// Display the status.
			Console.WriteLine(((HttpWebResponse)response).StatusDescription);
			// Get the stream containing content returned by the server.
			Stream dataStream = response.GetResponseStream();
			// Open the stream using a StreamReader for easy access.
			StreamReader reader = new StreamReader(dataStream);
			// Read the content.
			string responseFromServer = reader.ReadToEnd();
			// Display the content.
			Console.WriteLine(responseFromServer);
			// Clean up the streams and the response.
			reader.Close();
			response.Close();

			Console.Read();
Код взял из MSDN - все работает.

P.S. твой код тоже работает, надо смотреть firewall'ы или другие блокировщики.

Последний раз редактировалось Hollander; 08.11.2011 в 20:04.
Hollander вне форума Ответить с цитированием
Старый 08.11.2011, 20:14   #3
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

А вот ссылка http://www.liveinternet.ru/stat/xseo.in/ норм открывается а та нет(((
Cpluser вне форума Ответить с цитированием
Старый 09.11.2011, 12:59   #4
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

В общем опишу полностью текущую проблему. У товарища Cpluser сама страница забирается через WebRequest, но ему нужно достать результаты поиска. Проблема заключается в том, что эти результаты выводятся при помощи JavaScript, который не срабатывает при WebRequest, т.к. запрос не симулирует работу браузера. Таким образом я нашел только 1 решение - использовать WebBrowser:

Код:
WebBrowser wb = new WebBrowser();
wb.ScrollBarsEnabled = false;
wb.ScriptErrorsSuppressed = true;
wb.Navigate("http://www.liveinternet.ru/rating/ru/?search=www.baby.ru");
while (wb.ReadyState != WebBrowserReadyState.Complete) { Application.DoEvents(); }
HtmlElement document = wb.Document.GetElementsByTagName("html")[0];
string htmlCode = document.InnerHtml;
Hollander вне форума Ответить с цитированием
Старый 09.11.2011, 13:52   #5
m0nax
Форумчанин
 
Аватар для m0nax
 
Регистрация: 25.09.2009
Сообщений: 525
По умолчанию

не вижу там никакого скрипта, все приходит в одном ответе

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

Последний раз редактировалось m0nax; 09.11.2011 в 13:54.
m0nax вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрос maks1503 SQL, базы данных 6 12.07.2011 09:47
Запрос mental SQL, базы данных 5 06.11.2010 20:17
Запрос с CASE переделать в запрос с PIVOT (MS SQL Server 2005) Машуля SQL, базы данных 4 06.05.2010 21:09
запрос ссылается на несвязанный с ним запрос kolebatel SQL, базы данных 0 11.06.2008 12:50