Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Генерация читабельных слов
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Генерация читабельных слов

Страниц (2): [1] 2 »
 

1. integer - 16 Января, 2013 - 23:14:24 - перейти к сообщению
На данный момент генерация производится так:
PHP:
скопировать код в буфер обмена
  1. function RandWord() {
  2.         $len = mt_rand(5, 10);
  3.         for ($i=0; $i<$len; $i++) $str .= chr(mt_rand(97, 122));
  4.         return $str;
  5. }

Результаты:
Цитата:
hbprkrnyz
yjwrnzysqq
ftkhaoxc
wmcckavj


Нужен алгоритм либо функция чтоб генерировались читабельные слова, похожие на существующие.
Например как в капче гугла https://accounts[dot]google[dot]com/SignUp и капчах многих других сайтов.
Иногда там встречаются и словарные слова, но восновном генерированые и читабельные.
2. LIME - 16 Января, 2013 - 23:33:46 - перейти к сообщению
скачай любой словарь и из него тяни
для брутфорса например есть куча словарей
3. DeepVarvar - 16 Января, 2013 - 23:41:35 - перейти к сообщению
Ха!
Я тут игрался два года назад. Вот такую хрень выдает:
Спойлер (Отобразить)

Настраивал я его гдето на прикольные слова, не могу найти, да и не буду. Старье такое что показывать стыдно. Ну да ладно:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. function sym($arr) {
  4.         $k = mt_rand(0,count($arr)-1);
  5.         return $arr[$k];
  6.         }
  7.  
  8. function slog() {
  9.         $hard = array("б","в","г","д",/*,"ж","","з","","й"*/"к","л","м","н","п","р","с","т",/*"ф","","х","","ц","ч"*/"ш",/*,"щ"*/);
  10.         $soft = array("а","е",/*"ё",*/"и","о",/*"у","ы","э","ю","я"*/);
  11.         $add = array("","","","","","",/*"ъ",*/"","","","","","","ь","","","","","","");
  12.         $s1 = sym($hard);
  13.         $s2 = sym($soft);
  14.         $s3 = sym($hard);
  15.         $slog = $s1.$s2.$s3;
  16.         if ($s3 != "") $slog .= sym($add);
  17.         return $slog;
  18.         }
  19.  
  20. function slovo() {
  21.         $s = mt_rand(1,4);
  22.         $slovo = "";
  23.         for ($i = 0; $i < $s; $i++) $slovo .= slog();
  24.         return $slovo." ";
  25.         }
  26.  
  27. function pr() {
  28.         $s = mt_rand(3,16);
  29.         $pr = "";
  30.         for ($i = 0; $i < $s; $i++) $pr .= slovo();
  31.         /*$l = "<span>".mb_substr($pr,0,1,"UTF-8")."</span>";
  32.         $n = mb_substr($pr,1,-1,"UTF-8");
  33.         $pr = $l.$n;*/
  34.         return trim($pr).". ";
  35.         }
  36.  
  37. function abz() {
  38.         $s = mt_rand(10,30);
  39.         $abz = "";
  40.         for ($i = 0; $i < $s; $i++) $abz .= pr();
  41.         return $abz;
  42.         }
  43.  
  44. //echo "<style>span {text-transform:uppercase}</style> ";
  45. echo abz();
  46.  
  47. ?>
  48.  
4. integer - 16 Января, 2013 - 23:44:17 - перейти к сообщению
DeepVarvar
Это практически то что нужно, спасибо. Попробую немного переделать под мою задачу.

LIME
Настоящие слова мне не нужны, нужны именно случайно сгенерированые.
5. caballero - 16 Января, 2013 - 23:45:45 - перейти к сообщению
Цитата:
Вот такую хрень выдает

Ты что, фанат Толкиена? Улыбка
6. LIME - 16 Января, 2013 - 23:46:26 - перейти к сообщению
DeepVarvar ААААа!!
маньяки в городе !!
ныкайтесь
вопрос: интереснее не было задачи?
(Добавление)
ой...простите
2 маньяка
7. DeepVarvar - 16 Января, 2013 - 23:47:43 - перейти к сообщению
caballero пишет:
Ты что, фанат Толкиена?
Скорее bred.php фанат Толкиена Радость
(Добавление)
LIME пишет:
интереснее не было задачи?
Была, есть и осталась.
Необходимо анализировать поисковый запрос вводимый пользователями и очищать его от неосмысленных слов на русском и английском языках. Если запрос осмысленный и не дал результатов поиска - запомнить его и показать админу в статистике.
Слабо? Закатив глазки
8. LIME - 16 Января, 2013 - 23:54:27 - перейти к сообщению
не слабо
зависит от приемлемой степени энтропии сочетания букв
(Добавление)
решаемо
...ты лучше глянь что мордокнига придумала с поиском
есть о чем долго думать
9. DeepVarvar - 17 Января, 2013 - 00:01:15 - перейти к сообщению
Ну как минимум, например, слова привет, превед и превет должны корректно восприниматься. Естессно на первом месте правописание, затем попытка поиска с опечаткой. Я так мыслил сделать дерево (массив вложений) с ветвлениями по правилам русского языка, по его слогам, где слова образуются из приставки, затем корня, ну и т.д., описать возможные варианты очерёдного появления букв и/или слогов. А при анализе проваливаться в глубину "дерева" и смотреть есть ли такие варианты. Но не принцип Т9 как на тлф, у Т9 словарь, а тут скорее правила, чем словарь.
(Добавление)
LIME пишет:
мордокнига придумала с поиском
Меня там нет, опиши.
10. LIME - 17 Января, 2013 - 00:10:14 - перейти к сообщению
поиск не спайдером а по интересам юзера или например на запрос "бар" учитывается твой район ,музыка любимая итд
и предпочтения юзеров твоего р-на
тоесть поисковики и сео уже вчера
если нет результата то подрубается поиск бинга (снюхались)
и выбор запоминается для подобных аккаунтов
я сам там не сижу
вычитал
11. DeepVarvar - 17 Января, 2013 - 00:12:59 - перейти к сообщению
LIME пишет:
поиск не спайдером а по интересам юзера или например на запрос "бар" учитывается твой район ,музыка любимая итд
и предпочтения юзеров твоего о-
тоесть поисковики и сео уже вчера
если нет результата то подрубается поиск бинга (снюхались)
и выбор запоминается для подобных аккаунтов
шляпа... скучно... у них это все есть уже в "базе"...
12. LIME - 17 Января, 2013 - 00:13:46 - перейти к сообщению
госпади
какое млин дерево
словари + созвучия
д=т и тд
(Добавление)
поиск!
проснись!
релевантность гуглу пк снилась такая
13. DeepVarvar - 17 Января, 2013 - 00:16:42 - перейти к сообщению
LIME пишет:
словари
Категорически нет. Никаких словарей.
В словаре есть слово "Камбалятор" ? А оно осмысленно и корректно.
14. LIME - 17 Января, 2013 - 00:17:02 - перейти к сообщению
*не
телефон с...ка меняет буквы
тоже умный))
15. caballero - 17 Января, 2013 - 00:18:26 - перейти к сообщению
Цитата:
В словаре есть слово "Камбалятор" ? А оно осмысленно и корректно.

вообще то есть частотные словари где слова "комбаляторр" и "слонопотам" не на первом месте

 

Powered by ExBB FM 1.0 RC1