0.01
No commit activity in last 3 years
No release in over 3 years
This gem facilitates interaction with https://rucaptcha.com/api-rucaptcha API.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 10.0
~> 3.0

Runtime

 Project Readme

RucaptchaApi

This gem facilitates interaction with https://rucaptcha.com/api-rucaptcha API.

Installation

gem 'rucaptcha_api'

Fast usage

/example.rb

Explained usage

require 'rucaptcha_api'
rucaptcha_key = '5d01e7jk4d9c64a784b25d38840d1407' - for example. get your own 'captcha KEY' from https://rucaptcha.com/setting page after you registered.
api = RucaptchaApi.new rucaptcha_key
path_to_captcha = File.expand_path 'var/captchas/1.png' - absolute path to image of your captcha (only accepts jpg,jpeg,gif,png)
captcha_id = api.send_captcha_for_solving path_to_captcha, params: {phrase: 1} - you send captcha for solving, and you get its id as a resonse so that you can later look up its solution when it's ready. params here are optional, and you can find possible params in API docs https://rucaptcha.com/api-rucaptcha:

POST параметр возможные значения описание параметра
phrase 0;1 0 = одно слово (значение по умлочанию)
1 = капча имеет два слова
regsense 0;1 0 = регистр ответа не имеет значения (значение по умолчанию )
1 = регистр ответа имеет значение
question 0;1 0 = параметр не задействован (значение по умолчанию )
1 = на изображении задан вопрос, работник должен написать ответ
numeric 0;1;2;3

0 = параметр не задействован (значение по умолчанию)
1 = капча состоит только из цифр
2 = Капча состоит только из букв
3 = Капча состоит либо только из цифр, либо только из букв.

calc 0;1 0 = параметр не задействован (значение по умолчанию)
1 = работнику нужно совершить математическое действие с капчи
min_len 0..20

0 = параметр не задействован (значение по умолчанию)
1..20 = минимальное количество знаков в ответе

max_len 1..20 0 = параметр не задействован (значение по умолчанию)
1..20 = максимальное количество знаков в ответе
is_russian 0;1

параметр больше не используется, т.к. он означал "слать данную капчу русским исполнителям", а в системе находятся только русскоязычные исполнители. Смотрите новый параметр language, однозначно обозначающий язык капчи

soft_id   ID разработчика приложения. Разработчику приложения отчисляется 10% от всех капч, пришедших из его приложения.
language 0;1;2 0 = параметр не задействован (значение по умолчанию)
1 = на капче только кириллические буквы
2 = на капче только латинские буквы
header_acao 0;1 0 = значение по умолчанию
1 = in.php передаст Access-Control-Allow-Origin: * параметр в заголовке ответа. (Необходимо для кросс-доменных AJAX запросов в браузерных приложениях. Работает также для res.php.)
textinstructions TEXT Текст, который будет показан работнику. Может содержать в себе инструкции по разгадке капчи. Ограничение - 140 символов. Текст необходимо слать в кодировке UTF-8.
textcaptcha TEXT Текстовая капча. Картинка при этом не загружается, работник получает только текст и вводит ответ на этот текст. Ограничение - 140 символов. Текст необходимо слать в кодировке UTF-8.

after you sent your captcha for solving and got captcha_id, you can find solved captcha with: solved_captcha = api.get_solved_captcha captcha_id #=> Yi7yu8 (in case it's not ready yet, this method will automatically wait for 5 seconds and then resend the request for solved captcha).

in case your captcha wasn't properly solved, you can complain on it with api.complain captcha_id.

Methods to get statistics

api.balance #=> 95.03 - Узнать баланс аккаунта. Баланс указывается в Российских рублях.

api.captcha_cost captcha_id - Запрос статуса и стоимости распознования данной капчи. Цена указывается в рублях.

api.stats_for date: '2013-11-27' # => string with xml - получить статистику использования аккаунта в XML за указанную дату.

RucaptchaApi.rucaptcha_stats # => {waiting: ..., ...} - waiting: количество работников ожидающих капчу. load: процент загрузки работников. minbid: текущая ставка за распознание капчи. В рублях. averageRecognitionTime: среднее время (в секундах) за которое в данный момент разгадываются капчи