Обход каптчи Яндекса с помощью rucaptcha.соm

yandex - Поиск в GoogleСтатья описывает один из способов получения данных от поисковой системы Яндекс с помощью сервиса распознавания каптчи.

Для этого нам необходимо:

  1. ресурс в сети с доступом по FTP (для закачки файлов) и доступным PHP (для выполнения команд)
  2. регистрация на сервисе rucaptcha.соm с оплаченным профилем (от туда необходимо взять API)

Принцип работы:

  1. Берем необходимый поисковый адрес
  2. Отправляем адрес Яндексу(запрашиваем)
  3. Проверяем, спрашивает ли у нас Яндекс ввод каптчи?
  4. Если нет то мы уже получили страницу от Яндекс
  5. Если спрашивает, тогда получаем изображение и необходимые поля формы
  6. Шлем изображение в rucaptcha.соm и в цикле ждем ответ
  7. Получили ответ (распознанный текст) и шлем текст с полями формы Яндексу
  8. В результате получаем страницу Яндекса с необходимой информацией (если конечно распознали правильно)

1. Поисковый адрес — их можно найти в Интернет или скопировать из адресной строки браузера.

2. Отправка данных будет происходить с помощью функции get_webpage 

$page = get_webpage($url);

3. Отправка поискового запроса(страницы) и Проверка записаны в одну функцию get_serp_page

здесь происходит отправка страницы Яндексу и разбор с помощью регулярных выражений ответа (ищем картинку с циферками, уже букавками русскими)

6. Отправка каптчи в сервис распознавания с помощью функции break_captcha

$page = break_captcha($page,$matches[1]);

  • $page — текст страницы с каптчей
  • $matches[1] — картинка(адрес, атрибут src) каптчи

здесь получаем поля формы key и retpath, поле spravka — не используется, куки берутся при использовании cURL и сохраняются/загружаются в/из файл cookie.txt с помощью CURLOPT_COOKIEJAR/CURLOPT_COOKIEFILE

$captcha = file_get_contents($src_img);
file_put_contents(‘ya_cap.gif’, $captcha);

сохраняем каптчу в файл

и отправляем с помощью recognize в распознавание (необходимо подключить API отдельным файлом)

Далее идет преобразование адреса в нормальный вид (иначе получим 404 страницу)

и опять получаем страницу но уже страницу а не каптчу (если правильно распознали)

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong
Запись опубликована в рубрике PHP программирование с метками , , , , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *