Если вы в первый раз на этом блоге рекомендую прочитать введение

Устали каждый раз писать куки и прокси в запросе?

25 Октябрь 2011 42 comments

Специально для этого в движке есть функция VkRequest.StaticRequest(). Она делает то же самое, что и обычная функция Request, но при этом не нужно указывать прокси и куки. Они берутся из специальных свойств, которые подразделяются на 2 набора. Первый:

  • GlobalProxy
  • GlobalCookies
  • GlobalHeaders

Значения этих свойств будут использоваться во всех вызовах функции StaticRequest. То есть достаточно один раз установить свойства

VkRequest.GlobalProxy = ...;
VkRequest.GlobalCookies = new CookieCollection();

И просто пользоваться функцией StaticRequest, указанный прокси будет использоваться автоматически и куки будут передаваться между всеми запросами.

При использовании многопоточности часто бывает, что нужны отдельный прокси и куки для каждого потока. На этот случай есть второй набор свойств:

  • ThreadProxy
  • ThreadCookies
  • ThreadHeaders

Это особые ThreadStatic cвойства. Это означает, что для каждого потока это свойство имеет разное значение. В остальном они работают так же как и предыдущий набор свойств. ThreadProxy и ThreadCookies имеют больший приоритет, чем свойства из предыдущего набора. То есть если указать GlobalProxy и ThreadProxy, то движок будет использовать ThreadProxy. Заголовки GlobalHeaders и ThreadHeaders работают немного по другому, движок объединяет оба эти набора в один. При этом если встречается 2 заголовка с одинаковым именем, то используется заголовок из набора ThreadHeaders.

Теперь вы можете использовать эти свойства и писать еще меньше кода wlEmoticon smile Устали каждый раз писать куки и прокси в запросе?. Не забудьте скачать последнюю версию движка, сегодня вышло обновление.

Урок 8 — Как залить картинку

20 Август 2011 61 comments

Сегодня мы научимся заливать картинки. На большинстве серверов для этого используется формат multipart/form-data, который является довольно громоздким для написания вручную. Благодаря Viking.Engine загрузка картинок происходит так же просто как и обычный запрос.

Читать далее…

Движок теперь поддерживает HTTPS!

6 Август 2011 35 comments

Вышла новая версия Viking.Engine, теперь можно делать https запросы! Для того чтобы этим воспользоваться достаточно просто сделать запрос к https странице, все работает само. При этом только следует учесть, что далеко не все HTTP проски могут работать с HTTPS, так что советую для этого использовать соксы.

Еще появилась возможность жаловаться на неправильно разгаданную капчу. Делается это вот так:

string captchaId;
VkRequest.PostCaptcha("http://website.com/captcha?sid=234fre", out captchaId);
// Узнаем что капча неправильная
VkRequest.ReportBadCaptcha(captchaId);

И последнее, что хочу отметить – новый параметр запроса: FollowRedirects, который позволяет автоматически переходить по редиректам.

VkRequest.Request("http://vkontakte.ru/", FollowRedirects: true);

Все подробности про новую версию можно узнать на странице движка.

Вышла новая версия движка и help!

1 Июнь 2011 14 comments

На самом деле новые версии выходили вместе с каждым уроком, и из-за этого могла возникать некоторая путанница. Теперь все будет подругому – появилась страница с историей версий, на которой будут публиковаться все новые версии с указанием изменений. А еще теперь к движку можно скачать помощь и XML-документацию. К сожалению, я пока что описал далеко не все классы, но помощь тоже будет обновляться и современем станет полной. Для тех кто не знает: XML-документация нужна для того, чтобы Visual Studio могла выводить всплывающие подсказки к функциям движка. Чтобы она работала просто киньте .xml файл в папку к .dll

Урок 7 – работаем с почтой

3 Май 2011 15 comments

Зачастую чтобы зарегистрироваться на каком-то сайте нужно выполнить активацию по почте: зайти на свой ящик, найти там письмо со ссылкой и перейти по ней. Сегодня мы научимся работать с почтой через протокол POP3. Этот протокол используют все известные почтовые клиенты и он довольно прост в обращении.
Читать далее…

Урок 6 — парсим HTML

24 Апрель 2011 45 comments

Часто нам бывает нужно вытащить из веб-страницы какую-то информацию, например профиль из социальной сети. Многие до сих пор делают это с помощью регулярных выражений (или вообще с помощью поиска подстроки). В простейших случаях это работает, но в целом подход неправильный. Тут мне сразу же вспоминается известное обсуждение на Stackoverflow. Кстати говоря, полностью спарcить HTML с помощью регулярных выражений невозможно в принципе, т.к. это языки разных уровней в иерархии Хомского. К счастью в наш движок уже встроен парсер HTML, остается только им воспользоваться. И в этой статье я собираюсь показать как это делается на примере профиля Павла Дурова ВКонтакте. Читать далее…

Урок 5 – продвинутый регер rambler.ru.

18 Январь 2011 43 comments

На этот раз мы будем учиться на примере более серьезной программы, которую, например, можно продать и на полученные деньги пойти купить себе сникерс icon smile Урок 5 – продвинутый регер rambler.ru. . Это будет усовершенствованный регер почты rambler.ru, быстрый, многопоточный, с поддержкой антигейта и всех видов проксей. Программа эта более длинная чем предыдущие, поэтому я не буду объяснять как работает весь исходник, а расскажу только про важные части. Остальное в основном связано с работой интерфейса и можно понять просто глядя на код. Читать далее…

Урок 4 – Накрутчик опросов.

16 Январь 2011 19 comments

На этот раз мы напишем накрутчик опросов. На его примере мы научимся двум очень важным вещам — многопоточности и использованию прокси-серверов. Без этих вещей невозможно делать массовые рассылки. После того как вы освоите этот и следующий урок (он будет посвящен разгадыванию капчи с помощью antigate), уже можно будет писать простые программы. А дальше дело за опытом и практикой. Читать далее…

Урок 3 – mail регер rambler.ru.

14 Январь 2011 28 comments

Сегодня мы напишем регистратор почты на rambler.ru. Этот пример поможет научиться использовать сниффер для анализа запросов, которые посылает браузер. А еще мы научимся скачивать картинки и разгадывать капчу. К тому же на этот раз у нас будет windows-приложение, а не консольное. Итак, поехали. Читать далее…

Урок 2 – парсер прокси.

12 Январь 2011 25 comments

Ну что, думаю пора уже создать первый проект. Это будет парсер прокси. С его помощью мы научимся на практике делать первые запросы и заодно увидим как применяются простые регулярные выражения. Для примера мы будем собирать прокси с сайта www.socks24.org. Читать далее…