Все записи автора Oleksiy

Автоматизированное распознавание простой капчи с помощью Google Docs

По роду деятельности не часто, но сталкиваюсь с капчами. Из-за больших объемов работы многие процессы автоматизированы, среди которых и распознавание капчи — эта стадия осуществляется с помощью сервиса Antigate, который достаточно стабильно работает, и отличается низкой ценой.
Однако на днях попалась интересная новость (ну как новость — с опозданием на пару месяцев) о том, что сервис Google Docs распознает текст, который загоняется на сервис с виде картинок или pdf-документов. Сразу же возникла мысль использования ресурсов Google автоматизированного для распознавания капчи.
Алгоритм работы, осуществляемый в режиме он-лайн в браузере представляется следующим:

1. В процессе работы наталкиваемся на капчу
2. Получаем капчу в виде графического файла с расширением, которое поддерживается сервисом Google Docs. В настоящее время это форматы .jpg, .png, .gif размером не более 2-х мегабайт. Учитывая, что речь идет о капче — лимит размера загружаемой картинки нас не особо волнует.
3. Открываем новую вкладку
3. В ней загружаем картинку на сервис
4. Открываем картинку в виде текстового файла внутри сервиса
5. Получаем данные в виде готового текста
6. Закрываем вкладку с распознанной капчей
7. Используем результат распознавания в работе

Понятно, что данный алгоритм можно зациклить. Так же понятно, что для оптимизации работы наиболее правильным методом сохранения данных является использование одного и того же имени файла — таким образом мы не засоряем память.

В результате 10 экспериментов, проведенных по описанной выше схеме (в качестве рабочего решения для тестирования использовался блок, написанный на Zennoposter), установлено, что Google без проблем справляется с простыми числовыми капчами, но практически бесполезен при распознавании капчи, представленной на картинке ниже (верхняя часть — капча — нижняя часть — результат распознавания):
Распознавание капчи с помощью Google Docs

Итог эксперимента прост: продолжаем использовать Antigate далее. 1 бакс за 1000 распознанных капч — вполне нормальная цена, а многопоточность — никто не отменял.

 

Х-Фактор и мысли о …

Коктейль ХиросимаПо зомби-ящику (это я так телевизор называю, которых дома аж три, и которые мы, слава Святому Коннектию, смотрим не так часто, как того хочется программным директорам телеканалов) сегодня Икс-Фактор идет. За ужином весьма неплохо идет — музыка разноплановая, жюри умеет держать паузу ровно столько, что бы не стать надоедливо-занудным и не отпугнуть зрителей от шоу, а участники … просто участники — со своими плюсами-минусами, со своими тараканами в голове и все такое прочее.

Но сегодня не о том. Сегодня о том, как года два назад занесло меня (как частенько заносит на плюс-минус несколько сотен/тысяч километров куда-нибудь) в город Кишинев. Вот тут — если я правильно вспомнил адрес (сами понимаете — после нескольких Хиросим адреса с трудом запоминаются) наверное до сих пор находится неплохой караоке-бар, где песню Сосо Павлиашвили пел молодой человек так, что Сосо Павлиашвили рядом даже не лежал. Вот просто брал микрофон, и пел. Пел настолько классно, что проходящие мимо прохожие — несмотря на звукоизоляцию стен — заходили на «огонек».

О чем сегодняшний пост? Не о системах безопасности. И не о методах оптимизации/контроля/или чего-то еще. А просто о песне. Классная песня, правда же?

Хотя нет! Рецептом Хиросимы я поделиться просто обязан. А вдруг вы его не знаете? 🙂

Состав и пропорции:
— самбука: 1 часть (20 мл)
— абсент: 1 часть (20 мл)
— ликер Бейлис: 1 часть (20 мл)
— гренадин (гранатовый сироп): 2-3 капли

Готовится он очень просто:

1. Налить в рюмку самбуку.
2. Аккуратно по ложечке добавить ликер Бейлис. Важно чтобы слои не смешивались!
3. По ложечке налить абсент.
4. Посредине рюмки добавить несколько капель гранатового сиропа.
5. Выпить.

Кстати, вариантов питья Хиросимы есть целых три: залпом, через соломинку, и с помощью поджигания коктейля. Все варианты имеют свои плюсы и минусы, и только методом проб и ошибок вы можете определить для себя оптимальный. Удачи 😉

О школе и родительских собраниях

Как-то быстро пролетело лето, и (что ожидаемо) — начался учебный год. Дочь перешла в очередной класс, а я все так же пошел на очередное родительское собрание. Бла-бла-бла… 2 часа перекатывания из пустого в порожнее заставили меня вначале озвучить идею создания некоего ресурса виртуального родительского собрания (21-й век, экономия времени и прочее), а потом — после того, как родители эту идею поддержали — задуматься над ее реализацией.

После размышлений был составлен начальный список требований к ресурсу:
1. Закрытость — т.е. никто из посторонних не имеет доступа к размещенным материалам
2. Разделенность тематик обсуждения — т.е. есть тема, под ней формируется ветка обсуждения
3. Открытость для участников — комментарии, система лайков к комментариям, голосовалки
4. Файловый архив

Великолепным решением лично для меня показался Bitrix24. Но — он бесплатен только до 12 участников, а учитывая, что в классе 37 учеников — увы — не наш вариант.

Решил использовать WordPress, на базе которого и развернул сайт. В качестве доменного имени использовал бесплатный домен на dot.tk, сам сайт находится на хостинге GoDaddy. К настоящему моменту ресурс уже в рабочем режиме, планирую представить его в свободный доступ (может кому пригодится) через некоторое время — полностью настроенным и отлаженным.

Что представляет собой сайт:
— Страница тематик обсуждения — открыт для всех зарегистрированных пользователей. Предусмотрен закрытый раздел, доступ к которому имеют только представители родительского комитета.
— Под каждым комментарием можно поставить лайк — выразив таким образом согласие или несогласие с автором
— Представлен архив всех учебников в электронном виде.
— Страница контактов всех родителей и преподавателей
— Расписание уроков со звонками и номерами кабинетов
— Страница финансовых отчетов о поступлении денег и их расходе

В качестве файлохранилища используется Яндекс-диск, он-лайновые документы с ограниченными правами редактирования расположены в Гугл-доках.

Больше подробностей — позже 🙂 И как всегда — если у вас есть вопросы — задавайте!

WordPress — ограничение доступа к странице

Столкнулся только что с задачей ограничения доступа к определенной странице на сайте, созданном на WordPress. Т.е. задача вроде бы простая: если пользователь не прошел авторизацию — получить доступ к информации на определенной странице он не может. Но по факту без ковыряния в коде реализовать ее не так уж и просто.

Однако — это Worpdress! Несмотря на открытость кода платформа пользуется заслуженной популярностью — ниже представлен срез популярности CMS-систем в Рунете, на основании которого лидерство WordPress вполне очевидно:

Популярность CMS-систем за 2-й квартал 2015 года

Именно благодаря открытости системы с помощью плагинов у неискушенных в кодинге пользователей появляется возможность кастомизировать движок по собственному разумению. Решить можно практически любую задачу и задача, о которой я говорил выше — ограничение доступа к странице — отлично решилась с помощью плагина WP-Members.

Процесс установки плагина стандартен:
1. Загружаем плагин к себе на жесткий диск
2. Закачиваем через FTP на сервер в папку /wp-content/plugins/
3. Активируем плагин в панели управления.

плагин WP-MembersЛибо — заходим на ссылку http://вашсайт/wp-admin/plugin-install.php и вводим в строку поиска название искомого плагина: WP-Members, после чего устанавливаем и активируем его.

Сразу после активации плагина вы будете перенаправлены на страницу настроек, где сможете указать правила его использования. Можно ограничивать доступ как к страницам, так и к записям на сайте. Интересной особенностью плагина является возможность создания анонса записи — т.е. неавторизированный пользователь может увидеть выделенный вами фрагмент записи, а вот познакомиться с полным текстом — только после процедуры прохождения регистрации или верификации.

wp-members

Кроме того — в панели управления плагином можно указать адресацию страницы регистрации и авторизации пользователя — весьма удобная опция, если вы вдруг захотите создать индивидуализированную страницу этой процедуры, отличной от стандартной в WordPress.

Вам нужно…

Я ищу...Так уж случилось, что я много езжу. Ну как много — бывает, месяц-два я катаюсь по маршруту: дом-работа, а бывает… и каждый раз, в новом городе я ищу. Ищу оптимальный маршрут, ищу ближайший магазин, ищу… Вообщем — много чего ищу.
Вот так родилась идея этой странички — я буду делиться адресами и мнением касательно мест, которые искал когда-то сам. Кто знает — вдруг это будет вам полезно? Кстати, записи не имеют никакого хронологического порядка, а делаются по степени воспоминаний 🙂 Читать далее Вам нужно…