Рубрика «python»

В одной из систем, к которым я имею отношение, doc-файлы складываются в базу данных.
Мне стало интересно, можно ли пристроить в свою программку, работающую с базой, просмотр этих файлов.

Preview документов в программе на Python - 1

Почему-то естественным решением подобных задач обычно считают запуск MSWord с именем файла в командной строке. Но этот способ, мягко говоря, не слишком безопасен — в doc-е могут быть макросы, или это может быть вообще не doc, а специально приготовленный взломщиком файл. Поэтому лучше использовать специальный объект просмотра, реализованный в Офисе. Он более защищен, так как ничего другого, кроме просмотра документа, делать не умеет.

А если мы не будем ограничиваться одним форматом doc, тогда в качестве бонуса получим возможность просмотра вложенных документов в других форматах, для которых в Windows зарегистрированы стандартные просмотрщики.

Забегая вперед — всё получилось с помощью PyWin32. Правда, неожиданно в процессе пришлось скомпилировать свой пакет для поддержки нужного COM-интерфейса, но обошлось без жертв.
Читать полностью »

В этом году на ИБ-конференции ZeroNights отдел тестирования информационной безопасности приложений СберТеха предложил участникам ZeroNights поискать уязвимости в различных реализациях капчи. Всего мы дали 11 примеров с логическими или программными ошибками, которые позволяют решать множество капч за малое время. В каждом раунде от участников требовалось «решить» 20 капч за 10 секунд и при этом набрать нужный процент правильных ответов.

Мы предлагаем вам тоже поучаствовать. В посте мы разместим ссылки на все задания, составленные fryday, а под ними в спойлерах — write-up участника Liro с правильными ответами.

Задачки с ZeroNights 2017: стань королем капчи - 1

Читать полностью »

Привет! Сегодня мы расскажем о том, как нашей команде из Smart Engines удалось победить на международном конкурсе по бинаризации документов DIBCO17, проводимом в рамках конференции ICDAR. Данный конкурс проводится регулярно и уже имеет солидную историю (он проводится 9 лет), за время которой было предложено множество невероятно интересных и безумных (в хорошем смысле) алгоритмов бинаризации. Несмотря на то, что в своих проектах по распознаванию документов при помощи мобильных устройств мы по возможности не используем подобные алгоритмы, команде показалось, что нам есть что предложить мировому сообществу, и в этом году мы впервые приняли решение участвовать в конкурсе.

История победы на международном соревновании по распознаванию документов команды компании SmartEngines - 1Читать полностью »

Пролог


Порой у каждого из нас возникает вопрос, который не даёт нам покоя. И как правило ответ на такой вопрос можно получить лишь проанализировав опыт большого количества людей. У меня возник такой вопрос: «Какие факторы влияют на IQ и является ли он хоть чуточку преимуществом?». Конечно, читатель может воскликнуть, что всем давно уже все известно и можно прочитать статьи на эту тему. В какой-то степени вы окажитесь правы, но увы, статьи на тему IQ оказались крайне противоречивыми и навязали мне еще большее количество вопросов. Поэтому я и решил провести своё скромное исследование на эту тему.

Корреляция IQ с нашей жизнью (Feature ranking) - 1
Читать полностью »

Приглашаем на итоги конкурса по анализу данных - 1

В эту пятницу (15 декабря) мы приглашаем читателей Хабра присоединиться к онлайн трансляции награждения победителей конкурса по прогнозированию невозврата кредита. Состязание длилось 4 месяца, задача была предоставлена Банком Хоум Кредит (собственно, как и данные).

Мы наградим победителей и призеров, послушаем презентации их решений.

  • 1 место и Академический приз — Анзор Березгов
  • 2 место — Иван Тимошилов
  • 3 место — Александр Дьяконов
  • Приз SAS — Дарья Соболева

Читать полностью »

Airflow Workshop: сложные DAG’и без костылей - 1

Привет! Меня зовут Дина, и я занимаюсь разработкой игрового хранилища данных для решения задач аналитики в Mail.Ru Group. Наша команда для разработки batch-процессов обработки данных использует Apache Airflow (далее Airflow), об этом yuryemeliyanov писал в недавней статье. Airflow — это opensource-библиотека для разработки ETL/ELT-процессов. Отдельные задачи объединяются в периодически выполняемые цепочки задач — даги (DAG — Directed Acyclic Graph).

Как правило, 80 % проекта на Airflow — это стандартные DAG’и. В моей статье речь пойдёт об оставшихся 20 %, которые требуют сложных ветвлений, коммуникации между задачами — словом, о DAG’ах, нуждающихся в нетривиальных алгоритмах.

Читать полностью »

Решение задачи оптимизации многоступенчатых ракет - 1

Введение

Методы нелинейной оптимизации широко применяются при проектировании машин и механизмов. Указанные методы применяются и в ракетостроении, например, для оптимизации многоступенчатых ракет [1].

Многоступенчатая ракета — это аппарат, в котором части конструкции отделяются во время полета, придавая оставшейся части ракеты дополнительную скорость. Трёхступенчатая ракета схематически показана на рисунке.

Решение задачи оптимизации многоступенчатых ракет - 2

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

Мы рассмотрим две задачи в предположении, что коэффициент Решение задачи оптимизации многоступенчатых ракет - 3 и скорость реактивной струи Cn постоянны на каждой ступени, однако на разных ступенях могут принимать различные значения. В обеих задачах в качестве целевой функции принят коэффициент полезной нагрузки ракеты G, который необходимо минимизировать.

Характеристики многоступенчатой ракеты можно описать двумя уравнениями. Первое уравнение для коэффициента полезной нагрузки ракеты:

Решение задачи оптимизации многоступенчатых ракет - 4

где: W1– полезный вес ракеты ;WN –начальный вес ракеты до отделения ступеней.
Читать полностью »

Есть ли у вас та штука, что называется pet project или side project? Тот самый проект, который бы вы делали в свое удовольствие и для себя, для саморазвития или расширения портфолио. Лично у меня долгое время не было ничего, что можно было бы показать. Однако, в рамках стартовавшего этой осенью конкурса Atos IT Challenge 2018, у меня как раз появилась возможность начать такой проект.

Читать полностью »

Всегда приятно осознавать, что применение технологий сводится не только к финансовой выгоде, бывают ещё и идеи, делающие мир лучше. Об одном из проектов с такой идеей мы и расскажем в этот морозный пятничный день. Вы узнаете о решении, которое позволило увеличить точность экспресс-анализа крови, с помощью применения алгоритмов машинного обучения для выявления связей между микро-РНК и генами. Также, стоит отметить, что методы, описанные ниже можно использовать не только в биологии.

Учим машину разбираться в генах человека - 1
Читать полностью »

Очень часто можно увидеть вопросы на том же тостере: «А какую книгу взять книгу, чтобы выучить технологи Х», и естественно в комментариях идет большое число мнений и большое число различных книг. В данной теме, я сделаю обзор самых популярных книг по Python для начинающих программистов, и дам четкое мнение – нужно ли их читать или нет (субъективно).

Нужно ли читать книги. Изучая новые технологии, я люблю читать книги по данной технологии, так как я получаю не только сухую информацию, но и субъективное мнение автора по пригодности данных технологий. И в отличие от видео-курсов, мне не приходится ждать, пока автор из себя выдавливает мысль. Да и читаю, я быстро.Читать полностью »