Реальные примеры приложений на Python и PyQT: от косынки до веб-браузера

PyQt — набор «привязок» графического фреймворка Qt для языка программирования Python, выполненный в виде расширения Python. В нашей недавней статье мы рассмотрели создание простого приложения с использованием PyQt в связке с Qt Designer. Однако простым приложением функциональность PyQT не ограничивается. С его помощью можно создать приложения, начиная с привычного всем калькулятора и заканчивая веб-браузером. В этой статье мы рассмотрим 15 небольших десктопных приложений, написанных на Python с помощью PyQt. Приложения являются примерами использования разных частей фреймворка Qt, включая продвинутые виджеты, мультимедиа и другое. Исходники есть в этом репозитории на GitHub, так что спокойно скачивайте, изменяйте, экспериментируйте — в общем, делайте с ними всё, что душе угодно (в рамках лицензии MIT).

MooseAche

Пример веб-браузера, разработанного с помощью Python и Qt. Модуль QtWebEngineWidgets, представленный в Qt 5.6, даёт возможность просматривать веб-страницы в одном окне и использовать привычные элементы управления.

Mozzarella Ashbadger

Mozarella Ashbadger — революция среди браузеров! Возвращайтесь на вкладку назад и вперёд! Печатайте страницы! Сохраняйте файлы! Воспользуйтесь справкой! Любые совпадения с другими браузерами совершенно случайны.

Moonsweeper

Исследуйте таинственную поверхность луны Q’tee, но остерегайтесь пришельцев-аборигенов.

Moonsweeper — игра-головоломка, основанная на известном «Сапёре». Цель игры — исследовать поверхность вокруг зоны приземления вашего космического корабля, избегая встречи со смертоносными пришельцами расы B’ug. Детектор пришельцев подскажет, сколько ксеноморфов находится поблизости.

No2Pads

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

Calculon

Простой калькулятор, интерфейс разработан в Qt Designer, а операции реализованы с помощью стека.

Megasolid Idiom

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

NSAViewer

Приложение, которое позволяет делать снимки с помощью веб-камеры. Для взаимодействия с веб-камерой используется модуль QtMultimedia. Кроме того, имеется поддержка нескольких камер.

Failamp

Простое приложение для прослушивания аудио и просмотра видео-файлов с поддержкой плейлиста. Для работы с воспроизведением и плейлистом используются QtMultimedia и QtMultimediaWidgets.

Brown Note (QtDesigner)

Это приложение позволяет создавать временные записки на рабочем столе. Записки хранятся в базе данных SQLiteTake.

Piecasso (QtDesigner)

Проявите свою творческую натуру с PieCasso — единственным приложением для рисования со встроенными рисунками пирога.

Piecasso — клон Paint из Windows 95 с несколькими новыми функциями и вырезанными старыми. В программе доступны стандартные инструменты вроде кисти, карандаша, заливки, распылителя и множество фигур.

7Pez (QtDesigner)

Распаковывайте архивы с помощью кота. Перетащите архив на кота и нажмите на его голову, чтобы распаковать архив в той же папке.

Translataarrr (QtDesigner)

Переводчик с любого языка, поддерживаемого Google Translate, на пиратский. В приложении используются API для funtranslations.com и неофициальная обёртка над Google Translate для перевода на английский с других языков.

Raindar (QtDesigner)

Приложение, показывающее прогноз погоды в выбранном городе. Данные для прогноза берутся через API для OpenWeatherMap.

Doughnut (PyQtGraph)

Это приложение с помощью API для Fixer позволяет отслеживать курсы валют. По умолчанию отображаются курсы за последние полгода.

Ronery (QGraphicsScene)

Клон игры «Солитёр» с Ким Чен Ыном на рубашке карт. На внешнем виде различия между играми заканчиваются. В Ronery для работы с игровым полем используется QGraphicsScene.

Как запустить

Прежде чем запустить приложение, нужно установить его зависимости. В большинстве случаев единственным требованием является PyQt5 и иногда requests. Если приложению требуется что-то ещё, то перейдите в папку с ним и установите зависимости с помощью команды pip3 install -r requirements.txt. Затем для запуска приложения можно использовать команду python3 название_приложения.py.

Перевод статьи «15 Minute Apps | Common desktop apps in Python, using PyQt»

Ещё интересное для вас:
Тест: что вы знаете о работе мозга?
Что посмотреть и куда сходить разработчку — ближайшие события