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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2013, 05:11   #1
winhttp
Пользователь
 
Регистрация: 29.07.2012
Сообщений: 98
По умолчанию получение капчи - как такое возможно?

на сайте имеется капча, смотрел сниффером - первый запрос идет на страницу с капчей, потом скрипт берет сессию и пихает в ссылку по которой уже грузится капча. сделал программу, которая в точь точь воспроизводит все действия - делает запрос, потом берет куку, генерит ссыль, и получает капчу, но вот чудеса - капча уже обновилась и другая уже. куки шлю, все как полагается.
При попытке отправить post запрос с уже разгаданной капчей, сервер не принимает его.
Как такое вообще возможно? где может быть косяк???

Последний раз редактировалось winhttp; 08.01.2013 в 05:13.
winhttp вне форума Ответить с цитированием
Старый 08.01.2013, 21:00   #2
winhttp
Пользователь
 
Регистрация: 29.07.2012
Сообщений: 98
По умолчанию

апну тему. снифаю пакеты, которые шлет программа и браузер , пакеты - один в один. но программа не работает. это ведь не поддается никакой логике

Последний раз редактировалось winhttp; 08.01.2013 в 21:05.
winhttp вне форума Ответить с цитированием
Старый 08.01.2013, 21:55   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

Не очень понял
Если обратиться по одной и той же ссылке за каптчей у того же контакта, то получим совершенно разные картинки - что в этом удивительного?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 08.01.2013, 22:47   #4
winhttp
Пользователь
 
Регистрация: 29.07.2012
Сообщений: 98
По умолчанию

Первый запрос идет на страницу формой, GET запрос. Чтобы получить капчу, посылается второй GET запрос.
Поэтому я НЕ обращаюсь по одной и той же ссылке , чтобы получить капчу, не работаю через webbrowser, а шлю запросы через Httpwebrequest.
Сохраняю капчу так :
Код:
HttpWebRequest GET2 = (HttpWebRequest)HttpWebRequest.Create(@"http://site.ru/captcha/?"+Regex.Match(resp.Headers.Get("Set-Cookie"),@"PHPSESSID=\w*").ToString());
GET2.Proxy= proxy;
GET2.CookieContainer = cook;
GET2.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:17.0) Gecko/20100101 Firefox/17.0";
GET2.Host = "site.ru";
GET2.Accept = "text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1";
GET2.Headers.Add("Accept-Language", "ru-RU,ru;q=0.9,en;q=0.8");
HttpWebResponse myRes = (HttpWebResponse)GET2.GetResponse();
Stream str = myRes.GetResponseStream();
using (var fileStream = File.Create("capcha.jpg"))
{
    str.CopyTo(fileStream);
}
Поэтому для меня это вообще из ряда каких то чудес, как капча может не проходить.
winhttp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что такое датафайлы? и как их создать в Visual C++ ? Это вообще возможно? pufystyj Visual C++ 6 07.02.2011 20:50
Возможно ли такое? Vlad.V Microsoft Office Excel 28 13.01.2011 18:51
Оказывается, возможно и такое... Alex Cones Свободное общение 15 06.11.2009 17:55
Возможно ли такое...если да то как это сделать?! prizrak1390 Общие вопросы Delphi 9 03.01.2008 10:14