humanemulator.net — справка.
Продукт, демо и покупка — на
хуманэмулятор.рф
|
Демо
|
Купить
|
API
|
лог изменений
recognize_file_with_digits
recognize_file_with_digits($path,$timeout=60); - распознать звуковой файл как речь, состоящую из английских цифр от 0 до 9) (Доступна с версии 4.10.7)- фвйл должен быть с разрешением 128 Kb/s (8 kHz) ( Изменить формат файла можно через $sound->convert_file )
Функция на вход принимает параметры:
После отработки функция возвращает результат своей работы в скрипт :
Пример использования
<?php // Scenario: Recognize digits from audio files and solve CAPTCHA with audio challenge $xhe_host = "localhost:7010"; // Connect functional objects if not already connected if (!isset($path)){ $path = "../../../Templates/init.php"; require($path); } // info echo "\n<span>sound->" . basename (__FILE__) . "</span>\n"; // Example 1: Recognize file with English digits (0-9) // Input data $audioFile1 = "test/mp3/4196092774.mp3"; echo("\n\nExample 1. Recognize file with English digits (0-9): "); $digits1 = SYSTEM::$sound->recognize_file_with_digits($audioFile1); if ($digits1) { echo("true: " . $digits1 . "\n"); } else { echo("false\n"); } // Example 2: Recognize another file with English digits (0-9) // Input data $audioFile2 = "test/mp3/80692.mp3"; echo("\n\nExample 2. Recognize another file with English digits (0-9): "); $digits2 = SYSTEM::$sound->recognize_file_with_digits($audioFile2); if ($digits2) { echo("true: " . $digits2 . "\n"); } else { echo("false\n"); } // Example 3: Download file with Recaptcha V2 echo("\n\nExample 3. Download file with Recaptcha V2\n"); echo("Download file with Recaptcha V2\n"); // Example 4: Navigate to polygon // Input data $recaptchaUrl = "https://www.google.com/recaptcha/api2/demo"; echo("\n\nExample 4. Navigate to polygon: "); $navigateResult = WEB::$browser->navigate($recaptchaUrl); if ($navigateResult) { echo("true\n"); } else { echo("false\n"); } // Example 5: Click "I'm not a robot" checkbox echo("\n\nExample 5. Click 'I'm not a robot' checkbox: "); while (!DOM::$div->get_by_attribute("class", "recaptcha-checkbox-checkmark", false, 0)->is_visibled()) { sleep(1); } $clickResult = DOM::$div->get_by_attribute("class", "recaptcha-checkbox-checkmark", false, 0)->send_mouse_click(4, 4); if ($clickResult) { echo("true\n"); } else { echo("false\n"); } // Example 6: Click audio CAPTCHA option echo("\n\nExample 6. Click audio CAPTCHA option: "); while (!DOM::$button->get_by_name("recaptcha-audio-button", 1)->is_visibled()) { DOM::$div->get_by_attribute("class", "recaptcha-checkbox-checkmark", false, 0)->send_mouse_click(4, 4); sleep(1); } $audioClickResult = DOM::$button->get_by_name("recaptcha-audio-button", 1)->send_mouse_click(5, 5); if ($audioClickResult) { echo("true\n"); } else { echo("false\n"); } sleep(4); // Example 7: Click download echo("\n\nExample 7. Click download: "); WINDOW::$window->execute_download_file(); WEB::$browser->set_default_download("download"); WEB::$browser->enable_download_file_dialog(true); SYSTEM::$file_os->delete("download/audio.mp3"); while (!DOM::$anchor->get_by_href("api2/payload/audio.mp3", false, 1)->is_visibled()) { DOM::$button->get_by_name("recaptcha-audio-button", 1)->send_mouse_click(5, 5); sleep(1); } $downloadClickResult = DOM::$anchor->get_by_href("api2/payload/audio.mp3", false, 1)->send_mouse_click(5, 5); if ($downloadClickResult) { echo("true\n"); } else { echo("false\n"); } sleep(3); // Wait for download to complete while (!SYSTEM::$file_os->is_exist("download/audio.mp3")) { sleep(1); } // Example 8: Recognize downloaded audio file with English digits (0-9) // Input data $downloadedFile = "download/audio.mp3"; echo("\n\nExample 8. Recognize downloaded audio file with English digits (0-9): "); $digits = SYSTEM::$sound->recognize_file_with_digits($downloadedFile); sleep(1); if ($digits == false) { echo("false: No audio file in correct format. (Possibly requesting audio file too frequently. Try again later.)\n"); WINDOW::$app->quit(); } else { echo("true: " . $digits . "\n"); } // Example 9: Enter the result echo("\n\nExample 9. Enter the result: "); WEB::$browser->set_active_browser(0); $inputResult = DOM::$input->get_by_name("audio-response", 1)->send_input($digits); if ($inputResult) { echo("true\n"); } else { echo("false\n"); } DOM::$button->get_by_id("recaptcha-verify-button", false, 1)->send_mouse_click(); // Quit the application WINDOW::$app->quit(); ?>
# Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:7010" from xweb_human_emulator import * # начало echo("<hr><font color=blue>sound.xxxxxxxxx</font><hr>") # 1 echo("1. Распознаем файл с английскими цифрами (0-9) : ") echo(sound.recognize_file_with_digits("test/mp3/4196092774.mp3"),"\n") # 2 echo("2. Распознаем файл с английскими цифрами (0-9) : ") echo(sound.recognize_file_with_digits("test/mp3/80692.mp3"),"\n") # 3 echo("<center><h5>Cкачаем файл с Recaptcha V2</h5></center>") echo("3. Перейдем на полигон : ") echo(browser.navigate("https://www.google.com/recaptcha/api2/demo"),"<br>") # 4 echo("4. Нажмем Я не робот : ") while not div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,0).is_visibled(): sleep(1) echo(div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,0).mouse_click(4,4),"\n") # 5 echo("5. Нажмем аудио вариант капчи : ") while not btn.get_by_name("recaptcha-audio-button",1).is_visibled(): div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,0).send_mouse_click(4,4) sleep(1) echo(btn.get_by_name("recaptcha-audio-button",1).send_mouse_click(5,5),"\n") sleep(4) # 6 echo("6. Нажмем скачать : ") window.execute_download_file() browser.set_default_download("download") browser.enable_download_file_dialog(true) file_os.delete("download/audio.mp3") while not anchor.get_by_href("api2/payload/audio.mp3",false,1).is_visibled(): echo(btn.get_by_name("recaptcha-audio-button",1).send_mouse_click(5,5),"\n") sleep(1) echo(anchor.get_by_href("api2/payload/audio.mp3",false,1).send_mouse_click(5,5),"\n") sleep(3) # ждем закачку while not file_os.is_exist("download/audio.mp3"): sleep(1) # 7 echo("7. Распознаем файл с английскими цифрами (0-9) : ") digits=sound.recognize_file_with_digits("download/audio.mp3") echo(digits) sleep(1) if digits==false: echo("нет аудио файла в правильном формате. (возможно слишком часто запрашиваем звуковой файл. повторите позже.)") app.quit() # 8 echo("\n8. Введем результат : ") browser.set_active_browser(0) echo(input.get_by_name("audio-response",1).send_input(digits),"\n") btn.get_by_id("recaptcha-verify-button",false,1).send_mouse_click() # конец echo("<hr><br>") # Quit app.quit()
#region using using System; using System.Diagnostics; using System.Collections.Generic; using System.Linq; using System.IO; using System.Text; using System.Threading; using XHE; using XHE.XHE_DOM; using XHE.XHE_System; using XHE.XHE_Window; using XHE.XHE_Web; #endregion class Program:XHEScript { static void Main(string[] args) { // init XHE server = "localhost:7010"; InitXHE(); // начало echo("<hr><font color=blue>sound.recognize_file_with_digits</font><hr>"); // 1 echo("1. Распознаем файл с английскими цифрами (0-9) : "); echo(sound.recognize_file_with_digits("test/mp3/4196092774.mp3")+"\n"); // 2 echo("2. Распознаем файл с английскими цифрами (0-9) : "); echo(sound.recognize_file_with_digits("test/mp3/80692.mp3")+"\n"); // 3 echo("<center><h5>Cкачаем файл с Recaptcha V2</h5></center>"); echo("3. Перейдем на полигон : "); echo(browser.navigate("https://www.google.com/recaptcha/api2/demo")+"<br>"); // 4 echo("4. Нажмем Я не робот : "); while(!div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,"0").is_visibled())sleep(1); echo(div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,"0").send_mouse_click(4,4)+"\n"); // 5 echo("5. Нажмем аудио вариант капчи : "); while (!btn.get_by_name("recaptcha-audio-button","1").is_visibled()) { div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,"0").send_mouse_click(4,4); sleep(1); } echo(btn.get_by_name("recaptcha-audio-button","1").send_mouse_click(5,5)+"\n"); sleep(4); // 6 echo("6. Нажмем скачать : "); window.execute_download_file(); browser.set_default_download("download"); browser.enable_download_file_dialog(true); file_os.delete("download/audio.mp3"); while (!anchor.get_by_href("api2/payload/audio.mp3",false,"1").is_visibled()) { btn.get_by_name("recaptcha-audio-button","1").send_mouse_click(5,5); sleep(1); } echo(anchor.get_by_href("api2/payload/audio.mp3",false,"1").send_mouse_click(5,5)+"\n"); sleep(3); // ждем закачку while (!file_os.is_exist("download/audio.mp3")) sleep(1); // 7 echo("7. Распознаем файл с английскими цифрами (0-9) : "); string digits=sound.recognize_file_with_digits("download/audio.mp3"); echo(digits); sleep(1); if (digits=="false") { echo("нет аудио файла в правильном формате. (возможно слишком часто запрашиваем звуковой файл. повторите позже.)"); app.quit(); } // 8 echo("\n8. Введем результат : "); browser.set_active_browser(0); echo(input.get_by_name("audio-response","1").send_input(digits)+"\n"); btn.get_by_id("recaptcha-verify-button",false,"1").send_mouse_click(); // конец echo("\n\n"); app.quit(); } }
// подключим функциональные объекты, если еще не подключен xhe_host="127.0.0.1:7022"; echo=require("../../../Templates JS/init.js"); // начало echo("<hr><font color=blue>sound.recognize_file_with_digits</font><hr>"); // 1 echo("1. Распознаем файл с английскими цифрами (0-9) : "); echo(sound.recognize_file_with_digits("test/mp3/4196092774.mp3")+"\n"); // 2 echo("2. Распознаем файл с английскими цифрами (0-9) : "); echo(sound.recognize_file_with_digits("test/mp3/80692.mp3")+"\n"); // 3 echo("<center><h5>Cкачаем файл с Recaptcha V2</h5></center>"); echo("3. Перейдем на полигон : "); echo(browser.navigate("https://www.google.com/recaptcha/api2/demo")+"<br>"); // 4 echo("4. Нажмем Я не робот : "); while(!div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,"0").is_visibled())sleep(1); echo(div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,"0").send_mouse_click(4,4)+"\n"); // 5 echo("5. Нажмем аудио вариант капчи : "); while (!btn.get_by_name("recaptcha-audio-button","1").is_visibled()) { div.get_by_attribute("class","recaptcha-checkbox-checkmark",false,"0").send_mouse_click(4,4); app.sleep(1); } echo(btn.get_by_name("recaptcha-audio-button","1").send_mouse_click(5,5)+"\n"); sleep(4); // 6 echo("6. Нажмем скачать : "); window.execute_download_file(); browser.set_default_download("download"); browser.enable_download_file_dialog(true); file_os.delete("download/audio.mp3"); while (!anchor.get_by_href("api2/payload/audio.mp3",false,"1").is_visibled()) { btn.get_by_name("recaptcha-audio-button","1").send_mouse_click(5,5); sleep(1); } echo(anchor.get_by_href("api2/payload/audio.mp3",false,"1").send_mouse_click(5,5)+"\n"); app.sleep(3); // ждем закачку while (!file_os.is_exist("download/audio.mp3")) app.sleep(1); // 7 echo("7. Распознаем файл с английскими цифрами (0-9) : "); var digits=sound.recognize_file_with_digits("download/audio.mp3"); echo(digits); sleep(1); if (digits=="false") { echo("нет аудио файла в правильном формате. (возможно слишком часто запрашиваем звуковой файл. повторите позже.)"); app.quit(); } // 8 echo("\n8. Введем результат : "); browser.set_active_browser(0); echo(input.get_by_name("audio-response","1").send_input(digits)+"\n"); btn.get_by_id("recaptcha-verify-button",false,"1").send_mouse_click(); // конец echo("\n"); // Quit app.quit();
=============================================
Sound Объекты DOM System Vision Web Window
=============================================
если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
.