Added new get_queue_status() method
This commit is contained in:
parent
bf01329dc6
commit
c9794992c4
|
@ -1,7 +1,7 @@
|
|||
import requests
|
||||
import aiohttp
|
||||
|
||||
from python3_anticaptcha import get_balance_url, incorrect_captcha_url
|
||||
from python3_anticaptcha import get_balance_url, incorrect_captcha_url, get_queue_status_url
|
||||
|
||||
|
||||
class AntiCaptchaControl:
|
||||
|
@ -21,25 +21,59 @@ class AntiCaptchaControl:
|
|||
return True
|
||||
|
||||
def get_balance(self):
|
||||
'''
|
||||
"""
|
||||
Получение баланса аккаунта
|
||||
:return: Возвращает актуальный баланс
|
||||
'''
|
||||
answer = requests.post(get_balance_url, json = {'clientKey': self.ANTICAPTCHA_KEY})
|
||||
"""
|
||||
answer = requests.post(get_balance_url, json={'clientKey': self.ANTICAPTCHA_KEY})
|
||||
|
||||
return answer.json()
|
||||
|
||||
def complaint_on_result(self, reported_id: int):
|
||||
'''
|
||||
"""
|
||||
Позволяет отправить жалобу на неправильно решённую капчу.
|
||||
:param reported_id: Отправляете ID капчи на которую нужно пожаловаться
|
||||
:return: Возвращает True/False, в зависимости от результата
|
||||
'''
|
||||
"""
|
||||
payload = {'clientKey': self.ANTICAPTCHA_KEY,
|
||||
'taskId': reported_id,
|
||||
}
|
||||
|
||||
answer = requests.post(incorrect_captcha_url, json = payload)
|
||||
answer = requests.post(incorrect_captcha_url, json=payload)
|
||||
|
||||
return answer.json()
|
||||
|
||||
def get_queue_status(self, queue_id: int):
|
||||
"""
|
||||
Получение информации о загрузке очереди, в зависимости от ID очереди
|
||||
|
||||
Метод позволяет определить, нсколько в данный момент целесообразно загружать новое задание в очередь
|
||||
Данные в выдаче кешируются на 10 секунд
|
||||
|
||||
Список ID очередей:
|
||||
1 - стандартная ImageToText, язык английский
|
||||
2 - стандартная ImageToText, язык русский
|
||||
5 - Recaptcha NoCaptcha
|
||||
6 - Recaptcha Proxyless
|
||||
7 - Funcaptcha
|
||||
10 - Funcaptcha Proxyless
|
||||
|
||||
Пример выдачи ответа:
|
||||
{
|
||||
"waiting":242,
|
||||
"load":60.33,
|
||||
"bid":"0.0008600982",
|
||||
"speed":10.77,
|
||||
"total": 610
|
||||
}
|
||||
:param queue_id: Номер очереди
|
||||
:return: JSON-объект
|
||||
"""
|
||||
payload = {
|
||||
"queueId": queue_id
|
||||
}
|
||||
|
||||
answer = requests.post(get_queue_status_url, json=payload)
|
||||
|
||||
return answer.json()
|
||||
|
||||
|
@ -61,23 +95,58 @@ class aioAntiCaptchaControl:
|
|||
return True
|
||||
|
||||
async def get_balance(self):
|
||||
'''
|
||||
"""
|
||||
Получение баланса аккаунта
|
||||
:return: Возвращает актуальный баланс
|
||||
'''
|
||||
"""
|
||||
async with aiohttp.ClientSession() as session:
|
||||
async with session.post(get_balance_url, json={'clientKey': self.ANTICAPTCHA_KEY}) as resp:
|
||||
return await resp.json()
|
||||
|
||||
async def complaint_on_result(self, reported_id: int):
|
||||
'''
|
||||
"""
|
||||
Позволяет отправить жалобу на неправильно решённую капчу.
|
||||
:param reported_id: Отправляете ID капчи на которую нужно пожаловаться
|
||||
:return: Возвращает True/False, в зависимости от результата
|
||||
'''
|
||||
"""
|
||||
payload = {'clientKey': self.ANTICAPTCHA_KEY,
|
||||
'taskId': reported_id,
|
||||
}
|
||||
async with aiohttp.ClientSession() as session:
|
||||
async with session.post(incorrect_captcha_url, json=payload) as resp:
|
||||
return await resp.json()
|
||||
|
||||
async def get_queue_status(self, queue_id: int):
|
||||
"""
|
||||
Получение информации о загрузке очереди, в зависимости от ID очереди
|
||||
|
||||
Метод позволяет определить, нсколько в данный момент целесообразно загружать новое задание в очередь
|
||||
Данные в выдаче кешируются на 10 секунд
|
||||
|
||||
Список ID очередей:
|
||||
1 - стандартная ImageToText, язык английский
|
||||
2 - стандартная ImageToText, язык русский
|
||||
5 - Recaptcha NoCaptcha
|
||||
6 - Recaptcha Proxyless
|
||||
7 - Funcaptcha
|
||||
10 - Funcaptcha Proxyless
|
||||
|
||||
Пример выдачи ответа:
|
||||
{
|
||||
"waiting":242,
|
||||
"load":60.33,
|
||||
"bid":"0.0008600982",
|
||||
"speed":10.77,
|
||||
"total": 610
|
||||
}
|
||||
:param queue_id: Номер очереди
|
||||
:return: JSON-объект
|
||||
"""
|
||||
payload = {
|
||||
"queueId": queue_id
|
||||
}
|
||||
|
||||
async with aiohttp.ClientSession() as session:
|
||||
async with session.post(get_queue_status_url, json=payload) as resp:
|
||||
return await resp.json()
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
from .config import create_task_url, app_key, get_balance_url, incorrect_captcha_url, \
|
||||
HOST, PORT, RTMQ_USERNAME, RTMQ_PASSWORD, RTMQ_HOST, RTMQ_PORT, RTMQ_VHOST, \
|
||||
get_result_url
|
||||
get_result_url, get_queue_status_url
|
||||
from .get_answer import get_sync_result, get_async_result
|
||||
from .errors import ParamError, ReadError, IdGetError
|
||||
|
||||
|
|
Loading…
Reference in New Issue