IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Twitter

     01.10.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Еще один пример обхода капчи или делаем бизнес действительно прозрачным

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

     30.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Как повысить безопасность приложений с помощью фабрик строк в psycopg

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

     30.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

15 нейросетей в один Telegram-бот: история успеха и реализация помощника для создателей контента

Я занимаюсь NLP в сфере Data Science и хочу поделиться результатами разработки Telegram-бота, у которого под капотом уже 15 нейросетей. Речь идёт о TurboText_bot. Он будет полезен всем, кто причастен к созданию контента. К таким можно отнести блогеров, журналистов, копирайтеров и многих других специалистов.. Даже бабушек у подъезда, ведь бот способен генерировать и обрабатывать новости.

     29.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Python для биологов

Каждый, кто слышит словосочетание "язык программирования", наверняка представляет себе код или скрипт, который выполняет строгий порядок действий для решения сложной технической задачи. Если спросить прохожего, для каких целей используются языки программирования, первое, что придет ему на ум - разработка, а любой гуманитарий скажет, что это скучно и совершенно не интересно. Однако, мне хотелось бы развеять эти стереотипы. Учитывая современные тенденции роста научно-технического прогресса, важно отметить, что программирование перестало быть чисто "техническим" инструментом.

     28.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Умный в гору не пойдет

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

 

     28.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи
     28.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Тестирование миграции данных на python с pytest-bdd и testcontainers

В рамках проекта цифровой модернизации для одного из наших клиентов возникла задача миграции данных из одной модели хранения в другую. Для тестирования такого решения мы обратились к практикам BDD (Behaviour Driven Development) и виртуализации зависимостей с помощью docker контейнеров. В данном посте рассмотрен рецепт как можно организовать тестирование подобного решения с помощью pytest-bdd и testcontainers на python. Весь исходный код доступен по ссылке.

     27.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Регрессионный анализ в DataScience. Простая линейная регрессия. Библиотека statsmodels

Про регрессионный анализ вообще, и его применение в DataScience написано очень много. Есть множество учебников, монографий, справочников и статей по прикладной статистике, огромное количество информации в интернете, примеров расчетов. Можно найти множество кейсов, реализованных с использованием средств Python. Казалось бы - что тут еще можно добавить?

 

     27.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Руководство по программированию сокетов на Python. От введения до работающего примера

К концу руководства вы освоите основные функции и методы модуля Python socket, научитесь применять пользовательский класс для отправки сообщений и данных между конечными точками и работать со всем этим в собственных клиент-серверных приложениях.

     26.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Бамбук, Mito-лист и Деталь, или как подготовиться ко встрече с пандами

Как часто вы сталкиваетесь с необходимостью выгрузить в MS Excel более миллиона строк? Все фильтры на выгрузку уже были наложены ранее, но, увы, она до сих пор «не проходит по габаритам». Перед нами встает дилемма – делить, или … воспользоваться готовыми решениями для python, не изучая python! Речь сегодня пойдет о трех библиотеках, которые позволяют писать код и при этом не писать его, а также оперировать внушительными объемами данных с минимальными знаниями английского языка или синтаксиса пресловутых «панд» (здесь и далее «панды»: pandas –  open-source библиотека для python для работы с табличными данными – прим. автора). Для примера будем использовать объявления о продаже автомобилей Toyota с известного сайта.

     26.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Java из Python и обратно на Android

Продолжение статьи C/C++ из Python (ctypes) на Android. Теперь поговорим о том как использовать Java из Python, ведь для android это родной язык и почти все работающие библиотеки и нужные вещи написаны на ней. Научимся создавать классы, вызывать методы, возвращать результат и дергать callback-и. На Linux аналогично работает.

     26.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Taichi и 100-кратное ускорение Python-кода

Python стал самым популярным языком во многих быстроразвивающихся областях, таких, как глубокое обучение и различные направления анализа и обработки данных. Но при этом за удобство работы с Python-кодом, за высокий уровень его читабельности, приходится платить производительностью. Конечно, все мы время от времени жалуемся на скорость работы программ, и Python, безусловно, не стоит винить во всех грехах. Несмотря на это, справедливым будет заявление о том, что природа Python, интерпретируемого языка, не способствует высокой производительности кода, особенно когда речь идёт о «тяжёлых» вычислениях (один из признаков таких вычислений — наличие в программе нескольких вложенных циклов).

     26.09.2022       Выпуск 458 (26.09.2022 - 02.10.2022)       Статьи

Важно ли DS аналитику знать про software development?

Множество курсов, призванных подготовить DS специалистов «за полгода», создают впечатление, что уж сертифицированным датамайнером стать достаточно просто. А что? Немного основ DS языка, немного по структуре данных, немного по различным преобразованиям данных, немного SQL, немного математики (в ML не погружаемся, только знакомимся), немного визуализации, немного HTML+JS+CSS. Специалист готов? На практике оказывается, что маловато будет.

     24.09.2022       Выпуск 457 (19.09.2022 - 25.09.2022)       Статьи

Объясняю Pattern Memento (Снимок)

Первый паттерн, который я бы хотел с вами разобрать - Memento (снимок). После, с перерывом ~2 недели будут выходить и остальные. Если у вас есть замечания или вы что-то не понимаете - пишите в комменты, разбор самых интересных вопросов я добавлю в статью.

     24.09.2022       Выпуск 457 (19.09.2022 - 25.09.2022)       Статьи

Сканер уязвимостей на Python или как написать сканер за 6 часов

Недавно мне довелось участвовать в хакатоне по информационной безопасности на научной конференции в прекрасном городе Санкт-Петербург в СПбГУТ. Одно из заданий представляло из себя написание собственного сканера уязвимостей на любом ЯП с условиями, что использование проприетарного ПО и фреймворков запрещено. Можно было пользоваться кодом и фреймворками существующих сканеров уязвимости с открытым кодом. Это задание и мое решение с моим коллегой мы и разберем в этой публикации.

     22.09.2022       Выпуск 457 (19.09.2022 - 25.09.2022)       Статьи

GUI Генератор паролей на Python

Штош. В этой статье я научу вас делать кроссплатформенное приложение генератор паролей с графическим интерфейсом. Мы будем использовать язык Python и библиотеку PySide6 - привязку к инструментарию фреймворка Qt.

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

В статье я постарался затронуть все моменты создания и сборки приложения. Ознакомиться с проектом можно на GitHub.

 

     21.09.2022       Выпуск 457 (19.09.2022 - 25.09.2022)       Статьи

Similar images: API

Кортокая версия. Я набил API и python библиотеку, которые позволяют искать картинки похожую на искомую.API бесплатный, на один запрос выдает до 20 похожих картинок.В базе данных 18 миллионов изображений. Надеюсь, в ближайшее время, добавлю еще 50M.API: LINKpython wrapper: LINKWeb Demo: LINK. Можно загрузить свою картинку или воспользоваться текстовым поиском. Можно кликать на картинки в результате поиска и смотреть что найдет по ней. Хороший вопрос за сколько шагов можно дойти от чего-то невинного до порнухи или хотя бы обнаженки

     21.09.2022       Выпуск 457 (19.09.2022 - 25.09.2022)       Статьи

Кто же такой этот многорукий бандит?

Представьте на секунду, что вы очень азартный игрок, который только что попал в казино и не может выбрать, за какой игровой автомат ему сесть. Или один муравей из колонии, выбирающий по какому пути ему пойти на поиски пищи. Или даже вы – это целый маркетплейс, который думает, какую же цену, ему поставить на тот или иной товар!

     20.09.2022       Выпуск 457 (19.09.2022 - 25.09.2022)       Статьи

Решаем судоку при помощи компьютерного зрения

Судоку – это игра, в которой игровое поле представляет собой квадрат размером 9×9, разделённый на меньшие квадраты со стороной в 3 клетки. Таким образом, всё игровое поле состоит из 81 клетки. В них уже в начале игры стоят некоторые числа (от 1 до 9), называемые подсказками. От игрока требуется заполнить свободные клетки цифрами от 1 до 9 так, чтобы в каждой строке, в каждом столбце и в каждом малом квадрате 3×3 каждая цифра встречалась бы только один раз

     19.09.2022       Выпуск 457 (19.09.2022 - 25.09.2022)       Статьи

Я сделаю свою «умную» колонку… «with blackjack and hookers!». Эпизод 2(но двоек не существует). Проект NeBender

Данный проект является одновременно развитием и ответвлением проекта Pinder - https://habr.com/ru/post/538862/В комментариях к первой статье(да и сам думал об этом тоже) мне предлагали вариант для распознавания смыслов на GPT.Почитал немного про использование GPT, круто это всё конечно, вот прямо спорткар, Ferrari какой-нибудь в мире NLP. В общем Ferrari это круто, но я люблю велосипеды, поэтому было принято решение запилить пусть что-нибудь простое, но своё.Так появился проект NeBender(Neural Bender).