Генеральное консульство польши в бресте. Электронная регистрация визовых анкет в e-konsulat

В Беларуси стоит острая проблема с получением виз в Еврозону (т.е. Шенген). Все из-за того, что Польское посольство предоставляет так называемые мульти-визы за покупками (т.е. многократные). Регистрация производится на сайте посольства онлайн. Но вся проблема состоит в том, что свободных дат не словить. Единственный вариант - круглосуточно чекать страницу, и если появится дата - быстро «ловить» ее и заканчивать регистрацию. Т.к. свободного времени для круглосуточного чека нет, было принято решение об автоматизации данного процесса.
Сразу оговорюсь, что существуют различные скрипты, которые вылавливают свободные даты и за которые люди получают деньги. Мой скрипт не претендует на их место по быстроте, качеству и т.д. Данный скрипт был сделан только для себя, никакой коммерческой и иной выгоды я не преследовал.
Постановка задачи и входные данные:
Для начала необходимо было изучить то, как проходит процесс регистрации.
Линк на сайт посольства: by.e-konsulat.gov.pl
На главной странице видим два селекта, с выбором страны и города. Выбрав необходимые параметры нас редиректит на by.e-konsulat.gov.pl/Informacyjne/Placowka.aspx?IDPlacowki=94 .
Потом выбираем из меню «Шенгенская виза - Зарегистрируйте бланк» и переходим на by.e-konsulat.gov.pl/Uslugi/RejestracjaTerminu.aspx?IDUSLUGI=8&IDPlacowki=94 - данный урл я и брал за входную точку, т.к. нет смысла в автоматизации предыдущих страниц (конечно, перед этим я проверил возможность входа по данному урлу с чистыми куками)
Далее мы видим капчу. Введя ее, нам дается результат - Отсутствие свободных дат.
Исходя из этих данных, мы можем сделать набросок плана нашего будущего скрипта:
Выбор инструмента
После того, как я определился с тем, что необходимо делать - стал вопрос о подходящем инструменте. Сразу хочу оговориться, я не являюсь программистом, я тестироващик. Но некоторые знания языков присутствуют.
В самом начале я хотел автоматизировать данный процесс на TestComplete. После автоматизации я столкнулся с некоторыми проблемами, основная из которых была скорость отработки скрипта, да и плюс ко всему я юзал старую версию тесткомплита 7.5, которая работает максимум с браузером Mozzila 3.5. Сами понимаете, что в таком старом браузере отображение элементов хромает, да и верстка местами едет. Поэтому на данный инструмент я забил и присмотрелся к Selenium WebDriver.
Языком написания скрипта был выбран Python. Выбор пал на него по одной только причине, я был немного знаком с данным скриптовым языком, а лезть в Java, например и изучать его не было ни времени, ни желания.
Работа с капчей
На самом деле автоматизировать данные действия не составляет особого труда, но все портит ненавистная капча. Вся проблема заключалась в том, что капчи с периодичность раз в один-два месяца менялись и поэтому не было смысла продумывать технологию разгадывания капчи (создания шаблонов, масок и т.д.). По этой причине я решил заюзать antigate.
Зарегистрировавшись там и закинув 3 доллара, я получил ресурсов на 3000 капч.
Но теперь необходимо было продумать алгоритм обработки данной капчи, отправки ее на антигейт и получения значения капчи. Выглядело это примерно так:

Для работы с антигейтом я использовал API данного сервиса. Пришлось развернуть на локальной машине PHP server, не заморачиваясь выбор пал на Denwer. Создал локальный сайт test1.ru и закинул туда php страницу для работы с API сервиса.
Листинг данной страницы
file $filename not found"; return false; } $fp=fopen($filename,"r"); if ($fp!=false) { $body=""; while (!feof($fp)) $body.=fgets($fp,1024); fclose($fp); $ext=strtolower(substr($filename,strpos($filename,".")+1)); } else { if ($is_verbose) echo "could not read file $filename"; return false; } if ($ext=="jpg") $conttype="image/pjpeg"; if ($ext=="gif") $conttype="image/gif"; if ($ext=="png") $conttype="image/png"; $boundary="---------FGf4Fh3fdjGQ148fdh"; $content="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"method\"\r\n"; $content.="\r\n"; $content.="post\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"key\"\r\n"; $content.="\r\n"; $content.="$apikey\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"phrase\"\r\n"; $content.="\r\n"; $content.="$is_phrase\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"regsense\"\r\n"; $content.="\r\n"; $content.="$is_regsense\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"numeric\"\r\n"; $content.="\r\n"; $content.="$is_numeric\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"min_len\"\r\n"; $content.="\r\n"; $content.="$min_len\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"max_len\"\r\n"; $content.="\r\n"; $content.="$max_len\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"is_russian\"\r\n"; $content.="\r\n"; $content.="$is_russian\r\n"; $content.="--$boundary\r\n"; $content.="Content-Disposition: form-data; name=\"file\"; filename=\"capcha.$ext\"\r\n"; $content.="Content-Type: $conttype\r\n"; $content.="\r\n"; $content.=$body."\r\n"; $content.="--$boundary--"; $poststr="POST http://$sendhost/in.php HTTP/1.0\r\n"; $poststr.="Content-Type: multipart/form-data; boundary=$boundary\r\n"; $poststr.="Host: $sendhost\r\n"; $poststr.="Content-Length: ".strlen($content)."\r\n\r\n"; $poststr.=$content; $fp=fsockopen($sendhost,80,$errno,$errstr,30); if ($fp!=false) { fputs($fp,$poststr); $resp=""; while (!feof($fp)) $resp.=fgets($fp,1024); fclose($fp); $result=substr($resp,strpos($resp,"\r\n\r\n")+4); } else { if ($is_verbose) echo "could not connect to anti-captcha"; if ($is_verbose) echo "socket error: $errno ($errstr)"; return false; } if (strpos($result, "ERROR")!==false or strpos($result, "")!==false) { if ($is_verbose) echo "server returned error: $result"; return false; } else { $ex = explode("|", $result); $captcha_id = $ex; if ($is_verbose) echo "$captcha_id"; } } $text=recognize("captcha.png","Здесь должен быть ключ для работы с сервисом",true,"antigate.com"); ?>
Я не стал досконально разбираться, что к чему, но единственное, что я выставил - это следующие настройки:
$is_phrase = 0, //является ли ваша капча фразой $is_regsense = 1, //регистро зависимая или нет? $is_numeric = 0, //Состоит из цифр? $min_len = 4, //минимальная длинна $max_len = 4, //максимальная длинна $is_russian = 1 //есть ли русские символы
В итоге нам необходимо поместить изображение captcha.png в директорию, где находится index.php и перейти по урлу test1.ru
В итоге капча полетит на сервис, когда она разгадается нам придет ее id, обрамленный в тег b, либо придет какая-нибудь ошибка, которая отобразиться.
Останется дело за малым, только забрать значение капчи со страницы по ее id.
Создание скрипта
Т.к. все предварительные подготовки сделаны, то можем приступать непосредственно к написанию скрипта.
Работать мы будем с двумя открытыми окнами Firefox. Т.к. в одном окне у нас будет происходить чек дат, а во втором все работы относительно капчи. Для отображения капчи в новом окне, мы просто будем находить сам элемент на странице по id и считывать урл текущей капчи. При обращении на данный урл, мы получим только изображение капчи, без лишних элементов.


Теперь листинг скрипта, с комментариями:
from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait import time driver = webdriver.Firefox() #запускаем первое окно (основное) add_driver = webdriver.Firefox() #запускаем дополнительное окно для работы с капчей driver.get("https://by.e-konsulat.gov.pl/Uslugi/RejestracjaTerminu.aspx?IDUSLUGI=8&IDPlacowki=94") #переходим на наш урл captcha_url = driver.find_element_by_id("c_uslugi_rejestracjaterminu_ctl00_cp_botdetectcaptcha_CaptchaImage").get_attribute("src") #Находим элемент капчи по его id и считываем урл, по которому будет доступно изображение add_driver.get(captcha_url) #во втором окошке открываем нашу капчу add_driver.set_window_size(50,200) #делаем ресайз окна браузера, чтобы сделать скриншот именно капчи, без лишних серых полей add_driver.get_screenshot_as_file("captcha.png") #делаем скриншот окна, в итоге на нашем скриншоте будет только капча и сохраняем его в директорию локального сайта test1.ru, т.к. у меня скрипт лежит тамже, то путь не писал add_driver.get(http://test1.ru) #переходим на урл нашей странички, для работы с антигейтом captcha_id = add_driver.find_element_by_xpatch("//b") #находим элемент, который обрамлен в тег b, подразумевая,что там хранится значение id капчи count = false while (count == false) add_driver.get("http://antigate.com/res.php?key=Ключ для работы с антигейтом&action=get&id=" + captcha_id) captcha_complete = add_driver.find_element_by_xpatch("//pre").text # находим наше значение (на антигейте оно обрамлено в тег pre) if (captcha_complete.find("ERROR") >= 0) #проверяем, выскочила ли ошибка time.sleep(5) #спим 5 секунд else count = true #выходим из цикла проверки # теперь значение нашей капчи содержится в переменной captcha_complete, его и вводим в инпут driver.find_element_by_id("ctl00_cp_BotDetectCaptchaCodeTextBox").send_keys(captcha_complete) #находим наш инпут и вводим значение капчи driver.find_element_by_id("ctl00_cp_btnDalej").click() #находим кнопку далее и кликаем на нее result = driver.find_element_by_id("ctl00_cp_lblBrakTerminow").text if (result.find("Отсутствие") >= 0) print("Нет даты") else print("Дата есть")

Будущие улучшения
Основа готова, наш скрипт переходит на страницу, получает капчу, распознает ее через сервис распознавания, вводит капчу, кликает далее и проверяет наличие даты. Для себя я сделал следующее - загнал все это действие в цикл while (true) и чекал сайт, пока не словилась дата (также я добавил отправку письма на мыло, в случае положительного результата). Доработок по скрипту конечно же можно произвести много, например:
1) поставить проверку на ошибки и исходя из ошибок предпринимать различные действия
2) поставить проверку на неправильную капчу и отправку репорта на антигейт (пожаловаться на плохого работника)
3) дописать авторегистратор, а не просто чекер даты
и т.д.
Послесловие
Еще раз хочу оговориться, что данный скрипт слабоват, но результат от него был. Также стоит заметить, что в посольстве далеко не дураки сидят и часто меняют капчу, поэтому необходимо будет переписывать скрипт под новые условия.

В сентябре 2011 года вступили в силу изменения, в процедуре подачи анкет для получения польских национальных и шенген виз. Нововведение заключается в том, что все анкеты нужно заполнять и регистрировать на сайте электронного консульства Республики Польша: http://www.e-konsulat.gov.pl/

Из собственного опыта хочу добавить, что заполнять визовую анкету нужно внимательно и грамотно , проверяя все заполненные строки, но не более чем 30 минут, потому как система заставит вас начинать весь процесс заново. Поэтому перед началом регистрации стоит иметь под рукой распечатанную «шпаргалку» из статьи, указанной выше.

Вместе со всеми преимуществами системы электронной регистрации визовых анкет e-konsulat (теперь вам не надо искать бланки, стоять в очереди под консульством и т.д.), появился один очень серьезный недостаток: строго лимитированное количество обрабатываемых анкет, — что создает трудности при попытке зарегистрироваться, потому от момента регистрации до визита в консульство, может пройти до полтора месяца. И нет сейчас никаких возможностей изменить ситуацию, кроме как заблаговременно регистрироваться.

Такая картина наблюдается в консульствах Республики Польша в Львове, Луцке, Виннице. Интересно, что невозможно зарегистрироваться в консульском учреждении, к которому вы не относитесь территориально, — объясняют консультанты Севастопольского и Харьковского консульств. Поэтому, если вы знаете приблизительное время получения всех необходимых документов от работодателя для получения визы (Oswiadczenie или Zezwolenie), тогда стоит регистрировать анкету заблаговременно. Как указанно на сайте e-konsulat

Анкеты, не прошедшие регистрацию на сайте http://www.e-konsulat.gov.pl/ приниматься не будут.

Пункты приема визовых анкет

Если у вас нет возможности посетить консульство Республики Польша, тогда стоит прибегнуть к услугам визовых центров. Получить более детальную информацию о визовых центрах в вашем городе, можно по телефону:

  • +38 044 594 5496,
  • +38 032 235 1776
  • +38 050 117 9053

Также, можно связаться с помощью email:

Официальный сайт сети визовых центров в Украине: http://www.polandvisa-ukraine.com/

ВНИМАНИЕ! Визовый Центр Польши в Украине (ППВА Киева, Харькова, Днепра, Ровного, Луцка, Тернополя и Одесы) изменил условия регистрации на подачу документов для открытия визы в Польшу. С недавнего времени, после оплаты визового сбора (18,5 Евро) представитель ППВА лично связывается с вами по телефону и назначает дату подачи документов. НЕ обращайтесь к посредникам!

Регистрация на визу в Польшу для граждан Украины осуществляется либо непосредственно на сайте консульства РП, либо через визовый центр. Ниже, я привел подробную инструкцию, как пройти регистрацию на визу самостоятельно и что делать, если по каким либо причинам зарегистрироваться не удается.

Где регистрироваться лучше – в визовом центре или напрямую через консульство?

Конечно же через сайт консульства (e-konsulat.gov.pl ) — ведь это бесплатно, а за услуги визового центра придется заплатить сервисный сбор – 18,5 Евро.

Однако, учитывайте – Консульства РП в Украине расположены только в Киеве, Харькове, Одессе, Виннице, Луцке и Львове. Если вам не посчастливилось стать жителями этих городов и добираться туда далеко, то возможно визовый центр будет лучшим решением, ведь их сеть значительно шире.

Проблема номер два . На сайте консульства очень трудно поймать свободные даты, а учитывая огромный наплыв трудовых мигрантов из Украины в последнее время – ну просто нереально. Вероятнее всего вас ждет вот такое вот сообщение —


То есть, «В связи с отсутствием свободных дат для регистрации на визу в Польшу в системе e-consulat, предлагаем Вам воспользоваться услугами визового центра». В принципе, можно попытать счастья через несколько дней или попробовать связаться с сотрудниками консульства и уточнить даты, когда могут открыться свободные даты. Но шансы очень мизерные.

Сам процесс регистрации в системе не отличается от регистрации на сайте ППВА, поэтому мы опишем его ниже.

Регистрация на визу в Польшу через визовый центр (ППВА)

Как я упоминал выше — подача документов через визовый центр (ППВА) платная и составляет 18,5 Евро. Для регистрации необходимо предварительно оплатить эту услуга в KredoBank или IdeaBank, где вам выдадут квитанцию об оплате сервисного сбора с указанным регистрационным номером


Зарегистрироваться в ППВА можно двумя способами:

1. В телефонном режиме, набрав один из номеров call центра

  • +38 032 2351776
  • +38 032 2424564
  • +38 044 5945496
  • +38 050 1179053
  • +38 067 3430480
  • +38 093 1755503

Оператор визового колл-центра внесёт все ваши данные в базу и назовет регистрационный номер и дату вашего визита для подачи документов. Этот регистрационный номер вы называете по прибытии в ППВА.

2. Пройдя on-line регистрацию на сайте визового центра

Переходим на сайт ППВА (пункта приема визовых анкет):

Важно! Сайт для регистрации на визу в Польшу через визовый центр - это polandvisa-ukraine.com . Все остальные сайты -на которые вы попадаете при попытке зарегистрироваться - это компании посредники или тур-агентства, которые хотят получить дополнительную комиссию. Будьте внимательны!



На следующей вкладке, в самом верху страницы вам предложат перейти к процессу подачи документов:


На следующей вкладке Вам предложат либо продолжить процесс регистрации, либо вы можете внести изменения в уже оформленную заявку или вообще отменить ее, распечатать подтверждение регистрации или проверить статус. Нас интересует первый пункт.

Этап третий — выбираем в выпадающем меню подходящий нам по расположению визовый центр, выбираем пункт «подача документов» и жмем «Подтвердить»:


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

Этап четвертый — выбираем интересующий нас вид визы: национальная виза (рабочая), национальная на обучение, Шенгенская и Шенгенская туристическая; указываем количество заявителей, есть ли дети вписанные в паспорт и их количество и жмем «ПОДТВЕРДИТЬ»


Если свободные даты для регистрации есть, вы перейдете к следующему окошку, где надо будет ввести регистрационный код, указанный на вашей квитанции из банка об оплате сервисного сбора. Если все в порядке — вы приступаете к заполнению анкеты.

Сам процесс, я подробно описал в другой статье - как заполнить анкету на польскую визу

Единственное, что напомню — время заполнения анкеты ограничено — 1 час, поэтому лучше не мешкать. Заполнив анкету, Вам необходимо ее распечатать, вклеить фото и поставить подпись в необходимых местах. С анкетой-заявлением и полным пакетом документов вы должны явиться в назначенное время в ППВА для подачи документов на визу.

На анкете должен отображаться штрих-код с 19-значным номером. Проверьте соответствие написания имени и фамилии в латинице в анкете и в загранпаспорте.

Это при удачном стечении обстоятельств. А теперь о грустном — кто пробовал пройти регистрацию на сайте консульства или на сайте визового центра в последние месяцы сталкиваются с одной и той же проблемой — постоянно отсутствуют даты для регистрации на визу в Польшу.

Обходные пути регистрации на польскую взу, если нет свободных дат

Так почему же нет свободных дат в визовом центре? Возможно Польша решила перекрыть поток трудовых мигрантов в страну? Отнюдь. Просто поток желающих выехать на заработки в Польшу (да и просто туристов) настолько велик, что Визовые центры не в состоянии обработать такой объем заявок. Но дело не только в этом.

Ушлые турфирмы-посредники увидели прекрасную возможность заработать на своих согражданах. Механизм реализации нам неизвестен, но вероятнее всего, специальная программа-робот автоматически занимает даты для подачи документов, как только они открываются.

Справедливости ради, стоит отметить, что застать свободные даты в Киевский, Львовский и Одесский пункты приема визовых анкет все таки возможно, если пробовать зайти на сайт пораньше с 8 до 9 утра. Другое дело — Харьковский, Днепропетровский, Винницкий и Хмельницкий визовые центры. Там поймать «окно» просто нереально.

Итак, свободных дат нет, а визу получать как-то надо. Что делать?

На самом деле вариантов не так много:

  • пробовать постоянно обновлять сайт визового центра (polandvisa-ukraine.com ) в надежде, что вы счастливчик и вам удастся «поймать» свободные даты
  • обратиться к посредникам и за вознаграждение получить услугу по содействию в регистрации

Как искать этих посредников? А они особо и не прячутся. Более того, при попытке найти в поисковике сайт визового центра для подачи анкеты, вы наверняка натолкнетесь на одного такого крупного «помощника», которого легко перепутать с официальным ППВА — это так называемый «Центр Визовой Поддержки »


Вы без проблем найдете еще много аналогов таких «помогал». Принцип их работы ничем не отличается. А теперь самое интересное — сколько же стоят услуги таких посредников? Из картинки ниже мы видим, что для жителей разных областей и для различных категорий виз, цены отличаются:

  • если для жителей Львовской, Закарпатской, Волынской, Ровенской, Тернопольской и Ивано-Франковской области, цена услуги по содействию в регистрации на подачу документов в Визовый Центр Польши на визу категории С и D составит 300 гривен
  • то для жителей Харькова и Днепропетровск, на визу категории C цена составляет — 1000 грн, а на национальную визу D — уже 3000 грн.


Анкету вам придется заполнять непосредственно на сайте «центра визовой поддержки». Позже вы получите по электронной почте дату и время собеседования и свой регистрационный код. Вы спросите: «А насколько это законно?». Официально к такой компании не придерешься, ведь по документам они оказывают так называемые консультационные услуги относительно подготовки и подачи документов и все.

Если вы столкнулись с проблемой отсутствия свободных дат для регистрации в визовом центре Польши не торопитесь сразу обращаться к посредникам, выделите пару дней и постарайтесь все таки пройти регистрацию самостоятельно.


Вконтакте