@SKRASH Попробовал вставить в поиск Google всю поэму "МУМУ" Тургенева, текст ввёлся прекрасно без какой-либо натуги. Эмуляцию мыши и клавиатуры отключал, больше никаких параметров не менял.
spoilerКак можно реализовать опечатки ?
-
Допустим есть текст:
Съешь ещё этих мягких французских булок, да выпей чаю
Допустим как можно реализовать что на каждую букву в строке была 2% вероятность на замену ее из списка этой буквы, допустим у буквы С возможна замена на м,ч,[<BACK>] в случае когда 2% попало выйдет:
Мъешь ещё этих мягких французских булок, да выпей чаю
и так оно каждую букву проверяет на вероятность и меняет рандомно из списка для этого символа, или еще есть какие идеи?
-
Можно делать так (ниже чистый JavaScript, для вывода результата можно запустить в своем родном браузере в консоли):
var text = 'Съешь ещё этих мягких французских булок, да выпей чаю' //Нужный текст var object = { //Какие буквы и на что можно заменять 'С': ['S','('], 'с': ['s','('], 'о': ['0','()'], 'н': ['n','|-|'], 'з': ['3'] } function replacement(text, object, chance) { //Функция изменения буквы с указанным шансом (chance) function randomChance() { //Функция случайного шанса var random = Math.random() * 100 //Случайное число от 0 до 99 return (random < chance) ? true : false //Шанс включить замену текста } var symbols = text.split('') //Разбиваем текст на символы for (var i = 0; i < symbols.length; i++) { //Замена символов if (randomChance()) { //Если сработал шанс, продолжить замену, иначе не менять for (var key in object) { //Поиск символа в объекте if (key === symbols[i]) { //Если в объекте нашелся символ, продолжить замену, иначе не менять //Просто лог, чтобы видеть изменения в консоли. Можно удалить console.log('Позиция: ' + (i+1) +' - Изменяю букву "' + symbols[i] + '"' + ' на "' + object[key][Math.floor(Math.random() * object[key].length)] + '"') symbols[i] = object[key][Math.floor(Math.random() * object[key].length)] //Заменить символ на случайный break; } } } } return symbols.join('') //В конце склеить массив измененных букв в строку } var result1 = replacement(text, object, 2) //Применить функцию замены букв с шансом в 2% var result2 = replacement(text, object, 50) //Применить функцию замены букв с шансом в 50% var result3 = replacement(text, object, 100) //Применить функцию замены букв с шансом в 100% console.log('Шанс замены 2%. Результат: ' + result1) console.log('Шанс замены 50%. Результат: ' + result2) console.log('Шанс замены 100%. Результат: ' + result3)А в BAS можно использовать так. Пример проекта: ReplaceSymbolsChance.xml
Это в основном для спама. Логика примерно такая: каждый символ с указанным шансом может измениться на то, что нужно.
-
@jofamo2305 о, homoglyphs
-
@jofamo2305 Видел как-то сервис, который опечатки генерирует.