• Доработка Java проекта по выгрузке данных из Rest api

    Есть готовый Maven проект (Java + IntelliJ IDEA) по парсингу информации отдаваемой через REST API.
    Основываясь на уже готовых наработках, нужно расширить проект на дополнительные API.
    Данные сохраняются в базу MySQL, затем отдельной командой сохраняются в csv.

    Примеры сайтов и их апи:
    https://www.gdax.com/ -> https://docs.gdax.com/
    Пример GET запроса - https://api.gdax.com/products/BTC-USD/book?level=2

    https://yobit.net/ru/ -> https://yobit.net/ru/api/
    Пример GET запроса - https://yobit.net/api/3/depth/ltc_btc

    https://www.cryptopia.co.nz/ -> https://www.cryptopia.co.nz/Forum/Thread/255
    Пример GET запроса - https://www.cryptopia.co.nz/api/GetMarketOrders/DOT_BTC/50

  • Озвучивание книги через голосовой движок Яндекса с использованием HTTP API или JS API

    Язык реализации значения не имеет.
    Документация на сайте yandex, возможно понадобится кому то использовать vpn.
    Веб пример - https://webasr.yandex.net/ttsdemo.html
    Документация - https://tech.yandex.ru/speechkit/ (HTTP API -> Cloud ссылка, JS API -> JavaScript API ссылка)
    Задача:
    Нужна программа-конвертер из текста в голос с использованием синтезатора речи, в формат используемый мобильными плеерами android (например mp3, waw). Пример аудиоплеера андроид - smart audiobook player. Входной текст в формате fb2.
    Программа должна спокойно запускаться на Windows 7, 10. Должна быть возможность настройки голоса, скорости, эмоций (как в веб примере).
    Некоторые передаваемые параметры:
    Язык: ru-RU (по умолчанию)
    Качество: Сверх-Высокое (48KHz) (по умолчанию)
    Громкость: 1.0 (шаг 0.1) (по умолчанию)
    Эмоция: Нейтральная, Добрая, Злая (по умолчанию Нейтральная)
    Скорость: 1.0 до 3.0 (шаг 0.1) (по умолчанию 1.0)
    Голос: все перечисленные в выпадающем списке из веб примера. (по умолчанию Oksana)
    Ключ разработчика имеет ограничение на количество использований. При создании аккаунта на Яндекс (без привязки к телефону), можно создать новый ключ вида "f414fc72-5f06-4ee7-90ce-1a27809b9e06" для SpeechKit JavaScript Web API и/или HTTP API "SpeechKit Cloud". http://dl4.joxi.net/drive/2018/02/17/0003/0911/258959/59/76507cf577.png
    Возможно есть ограничение на количество передаваемых символов для 1 запроса (нужно проверить). То есть нужно ограничиться в передаче символов так, что бы вместиться в ограничение (если есть) и что бы предложение заканчивалось на точку.
    Для ускорения "озвучки" текста подозреваю нужно будет паралельно отправлять запросы.
    На выходе программа должна создать логически-последовательные mp3 файлы, в соответствии с содержанием книги.
    После запуска программы, конвертация должна проходить за минимальное количество кликов для пользователя.
    Время на обработку 750000 символов не должно превышать 10 минут.
    Название программы "Nymur 2.7.1".

    Макет - http://dl4.joxi.net/drive/2018/02/17/0003/0911/258959/59/2882514d6e.png
    Пример файла fb2 прикреплен.

  • Реализовать псевдокод на Java
    0 грн. mysql java maven

    Используя данные вида:
    CurrencyPair Bid/Ask Price Quantity
    BCH/ETH ask 1,4965 0,3
    BCH/ETH bid 1,49 0,000728
    находящиеся в MySQL db (отправлю заинтересовавшимся), а также используя значение комиссии, которая составляет 0.18% за каждое действие обмена, реализовать и перевести написанный ниже псевдокод в java (с использованием Maven проекта).

    По исполнению алгоритма, должен отобразится кратчайший путь обмена (см. псевдокод ниже). Выгодные предложения по обмену, с точки зрения алгоритма, уже созданы. Проверить работоспособность при подаче значений am1=0.1, 0.5, 1, 2,5,10.

    Вспомогательные функции:
    double internal_exchange(int cur1, double am1, int cur2, int exch_agent)
    /*Вычисляет объем валюты cur2, который можно получить в обменнике exch_agent
    в обмен на am1 единиц валюты cur2*/
    {/*Делаем выборку предложений обмена валюты cur1 на cur2, отсортированную по обменному курсу; выборка должна быть с учетом комиссии*/
    double res = 0;
    while (am1>0 и предложения остались) {Пока цель истратить am1 не достигнута и предложения остались выбираем из выборки самое выгодное предложение (с самым выгодным отношением объемов валют);
    /*Пример:
    пара USD/BTC - (имея 1btc, хотим купить USD)
    cur1=BTC, cur2=USD, am1 = 1.0
    Имеется предложение - агент хочет купить 0.1 BTC за 1200$
    Тогда v1=0.1, v2=1200
    получаем v1 – объем валюты 1, v2 – объем валюты 2;*/
    if v1>am1{ //заявка агента исполняется частично (cur1 кончилось; процесс завершится)
    res+=v2/v1*am1; //считаем пропорционально, сколько добавится валюты-результата
    am1=0; //исходная валюта истрачена
    }
    else {//заявка агента исполняется полностью (cur1 осталось; процесс продолжается)
    res+=v2; //добавляем валюту-результат
    am1-=v1; вычитаем потраченное количество исходной валюты}
    удаляем обработанное предложение из выборки
    }
    return res;
    }

    struct op_root{ //информация о состоянии до операции
    int cur; //тип валюты
    double am; //количество
    int exch; //обменник
    }
    #define EXCH_TIME 2 //Время на обмен
    #define FINISH_TIME 250 //Время жизни проекта (количество тиков/часов)
    Основная функция:
    void internal_chains_build(int cur0, int am0, exch_agent e)
    /*Функция строит наилучшие возможные результаты по обменнику e*/
    T=FINISH_TIME
    //Нужно объявить структуру типа такой int M[0..Т][0..nС]
    //M[i][j] - количество валюты типа j, которое может быть получено путем обменов к моменту i
    //Нужно объявить структуру типа такой op_root O [0..Т][0..nС]
    //O[i][j] - код и количество валюты, которое предшествует в смысле операций получению количества M[i][j]
    //Инициализация
    for(int i=0;i0;i-=EXCH_TIME)
    печать(O[i][cc].cur, O[i][cc].am);
    cc=O[i][cc].cur;
    }

  • Rest -> IDEA (Java) -> DB MySQL наполнение базы данных

    Используя IDEA (Java + Maven) нужно реализовать API и посылать с помощью REST (Restassured) запросы на сайт, приводить полученные данные к одному виду, создать и отправлять запрос с полученными данными в MySql database (подключенную к идее).  После записи всех данных в соответствующие столбцы в таблице, вытаскивать данные для дальнейшей обработки (смотри колонку value ниже).
    Пример рест запроса: GET -> https://api.livecoin.net/exchange/all/order_book
    Колонки в таблице БД: id, recordnum(счетчик итераций запросов),datetime(время получения информации в виде 04.12.2017 21:30:00), pairname (имя валютной пары), bidsasks(соответственно bids/asks), price(цена с 10 значениями до и после точки), quantity(количество, в примере ниже идет вторым значением), value(умножение цены на количество. value = price*quantity)
    Пример приходящей информации: "asks": [["11457","0.0001"],

  • Нужна помощь в настройке обработчика ReCaptcha через API в Java проекте
    0 грн. java

    Задача:
    Помочь разобраться мне, как в Java проект (Maven) добавить обработчик ReCaptcha который бы отправлял задачу через API.

    Пример используемого API:
    https://anticaptcha.atlassian.net/wiki/spaces/API/pages/196633
    или https://rucaptcha.com/api-rucaptcha

    Пример сайта на котором есть ReCaptcha: https://www.livecoin.net/ru/site/login

    Желательны знания дополнительных инструментов: Jsoup (Xsoup), HtmlUnit

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

Вгору