готовые приложения на python

Китай

Высоконагруженные сайты и приложения на Python / Django (29 проектов)

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

Небольшая таблица известных проектов (на основе данных http://builtwith.com/), кликабельно:

image loader

Pinterest (cоциальная сеть)

Python как язык программирования и в качестве фреймворка был выбран Django. Хостинг – Amazon. За основную систему управления базами данных взята MySQL, кэширование объектов выполняет memcached, а коллекций объектов – Redis. Solr используется как поисковая платформа, а Hadoop – для реализации поисковых и контекстных механизмов, анализа данных.

Немного о статистике:

В штате работают более чем 140 сотрудников по последним данным. Около 11-ти миллионов уникальных посетителей в неделю на декабрь 2011. 500 виртуальных машин в EC2, 410 Терабайт пользовательских данных или 80 миллионов различных объектов хранится в Amazon S3. На июль 2013 года Pinterest имеет около 70 миллионов пользователей, согласно французскому агентству Semiocast. Итого, Pinterest становится 4-ой по популярности социальной сетью в США после Facebook, Twitter и LinkedIn.

Disqus (сервис)

Python как язык программирования и в качестве фреймворка был выбран Django. Операционная система – Linux. За основную систему управления базами данных взята PostgreSQL, кэширование объектов выполняет memcached, как и в случае с Pinterest. За балансировку нагрузки отвечает HAProxy, за репликацию данных – Slony.

Немного о статистике:

В штате работают 33 человека. Число зарегистрированных пользователей растет и на данный момент составляет 50 миллионов человек. Сайт получает примерно 17 тысяч запросов в секунду. Более 144 миллионов уникальных посещений в месяц только с территории США. Около 750 000 сайтов и блогов.

Instagram (фото- и видео-приложение)

За основную операционную систему взят Ubuntu Linux 11.04. Python как язык программирования в качестве фреймворка был выбран Django. За основную систему управления базами данных взята PostgreSQL, кэширование объектов выполняет опять же memcached, а Redis выступает в качестве дополнительного хранилища данных. За балансировку нагрузки отвечает HAProxy. Проект использует инфраструктуру Amazon, в частности EC2, ELB, Route, S3 и CloudFront. За поисковую платформу взят Solr. Для работы с задачами используется Gearman.

Немного о статистике:

Все начиналось с одного небольшого и слабого сервера и двоих разработчиков. В первый же день было зарегистрировано около 25 000 пользователей. Сегодня же Instagram пользуются более 200 миллионов человек — более 7 миллионов пользователей ежедневно. Около 20 миллиардов фотографий было опубликовано, и 60 миллионов публикуется ежедневно. Facebook приобрел сервис за 1 миллиард долларов в апреле 2012 года.

Reddit (новостной сайт)

Python как язык программирования в качестве фреймворка был выбран Pylons. За основную систему управления базами данных взята также PostgreSQL, кэширование объектов выполняет memcached. RabbitMQ используется для автономной обработки данных. За балансировку нагрузки отвечает HAProxy. За поисковую платформу взят Amazon CloudSearch.

Немного о статистике:

Около 112 миллионов уникальных посещений в месяц. 5,46 миллиардов просмотров страниц в месяц. Reddit пользуются 2,89 миллиона человек. И все это обслуживает команда, состоящая из 28 человек.

Dropbox (облачное хранилище данных)

И Dropbox сервер и клиентское приложение написаны на Python. Клиент использует средства разработки GUI, такие как wxWidgets и Cocoa и другие важные библиотеки Python такие как Twisted, ctypes и pywin32. Dropbox зависит от librsync библиотеки, которая написана на C. Информация о файлах содержится в хранилище, реализованном на базе MySQL. Для хранения самих файлов используется Amazon S3.

Немного о статистике:

Штат состоит из 110 сотрудников. Более 50 миллионов зарегистрированных пользователей. Каждые 3 минуты более чем миллион файлов сохраняются с использованием сервиса. 500 миллионов файлов сохраняются ежедневно.

Pitchfork (музыкальный электронный журнал)

Python как язык программирования в качестве фреймворка был выбран Django. Хостинг – Amazon. Основной системой управления базами данных была выбрана MySQL. В дополнение используется PostgreSQL. За кэширование объектов отвечает Redis. В качестве поисковой платформы используется ElasticSearch и Solr. Также используются сервисы Amazon (EC2, RDS, SES).

Немного о статистике:

Проект имеет более 14,5 миллионов посещений в месяц (580 тысяч в день), из них 5,5 уникальных (410 тысяч в день). Просмотр страниц составляет 38,5 миллионов в месяц (1,6 миллиона в день). На март-апрель 2014 года количество зарегистрированных пользователей составляет 4,3 миллиона.

Lanyrd (портал)

Python как язык программирования и в качестве фреймворка был выбран Django. За основную систему управления базами данных взята PostgreSQL, кэширование объектов выполняет memcached. Redis используется в связке с Celery для хранения промежуточных результатов задач, которые выполняет Celery в асинхроном режиме. За балансировку нагрузки отвечает HAProxy. Проект использует инфраструктуру Amazon, в частности S3. За поисковую платформу взят Solr.

Немного о статистике:

Команда разработчиков состоит из всего 6 человек, как заявляет Andrew Godwin в своей презентации. Около 900 000 уникальных посетителей в месяц на март 2014 года, максимальное значение было в октябре 2013го и составляло немногим более миллиона посетителей (http://www.trafficestimate.com/lanyrd.com). Ежедневный просмотр страниц составляет около 55 000.

Читайте также:  где дешевле школьная форма

Mozilla (программное обеспечение)

Компания Mozilla использует различные языки программирования, в том числе и Python, который используется широко: от написания сборочных скриптов до сайта компании, Webmaker и других компонентов, а также сервера синхронизации – минималистичное WSGI приложение использующее Paste для разворачивания на хостинге и Sqlite3 в качестве базы данных.

Немного о статистике:

На сегодняшний день проектами Mozilla пользуются более 500 миллионов человек. Это весьма большой показатель, если учесть конкуренцию. Проектами Mozilla занимаются более тысячи разработчиков.

Yelp (портал с элементами социальной сети)

За основную операционную систему взят Ubuntu Linux. Python как язык программирования и в качестве фреймворка был выбран Django. За основную систему управления базами данных взята MySQL. Также Yelp использует сервисы Amazon, в частности S3 для хранения логов и фотографий, и EMR. В качестве поисковой платформы используется Solr/Lucene. За балансировку нагрузки отвечает HAProxy и LVS.

Немного о статистике:

Посещаемость сайта составляет около 200 миллионов человек в месяц, из них порядка 120 миллионов уникальных посещений. (https://www.quantcast.com/yelp.com). За все время работы проекта написано более 53 миллионов отзывов пользователями по всему миру.

Foursquare (социальная сеть с функцией геопозиционирования)

Проект написан на нескольких языках, в том числе и Python, который используется для автоматизации операционных задач и других процессов. CentOS Linux является основной операционной системой. HAProxy отвечает за распределение нагрузки и API-запросов. За основную систему управления базами данных взята MongoDB, кэширование вычислительных процессов выполняет Memcache. Часть информации, а именно пользовательские фотографии, хранится в Amazon S3. Анализом занимается Hadoop. За поисковую платформу взяты Solr и Elasticsearch. Для поиска по гео-индексам используется библиотека s2 от Google в связке с PostGIS. Kestrel отвечает за обработку асинхронных задач.

Немного о статистике:

Штат состоит примерно из 140 сотрудников. По данным за 2013 год проектом занимались около 40 тысяч разработчиков. Пользователей около 45 миллионов. Общее количество чек-инов по всему миру 5 миллиардов, и примерно 3 миллиона добавляется каждый день.

Rdio (музыкальный сервис)

Rdio использует несколько языков программирования. В частности, часть Бэкенда написана на Python и в качестве фреймворка выбран Django. Для хранения информации используется несколько баз данных – MongoDB и MySQL. Redis был выбран в качестве альтернативы memcached.

Немного о статистике:

Каталог из более чем 20 миллионов песен. Ежедневно около 200 тысяч просмотров страниц. На территории Соединенных Штатов около 300 тысяч людей пользуются сервисами проекта в течение месяца.

Google (поисковая система)

Google использует множество языков программирования. Так как создатель Python работал одно время в Google, легко предположить, что и этот язык программирования используется. Так и есть. На Python написана часть YouTube и поискового движка, а также много других компонентов. Вкратце, используется LevelDB как основная система управления базами данных. Также используется Closure для работы с JavaScript, это своего рода набор инструментов, созданный разработчиками Google.

Немного о статистике:

Статистика Google известна всем и везде, но приведем несколько цифр. Ежемесячно через поиск проходит 12,477 миллиардов запросов. Google занимает около 67% поискового рынка Соединенных Штатов. Уникальных посещений за месяц – 191 миллион человек. Штат компании составляет 53,891 человек.

Quora (социальный сервис «Вопросы и ответы»)

Python как язык программирования. Хостинг – Amazon. За основную систему управления базами данных взята MySQL, кэширование объектов выполняет memcached. За балансировку нагрузки отвечает HAProxy.

Немного о статистике:

Штат состоит из 72 сотрудников. Число уникальных посещений за февраль 2014 года составляет более одного миллиона. Ежемесячно сервисом Quora пользуются 1,126,00 людей (данные за 2013).

Подведем итог

Как видите, довольно много известных проектов использует Python / Django и это вполне оправданно. Python – очень интересный современный язык программирование, который сейчас очень быстро набирает популярность, как на западе, так и в рунете. Про преимущества Python / Django мы уже писали ранее небольшую заметку. На данный момент мы наблюдаем большой спрос на программирование на Python / Django, ведь это качество! Спрос на проекты рождает и спрос на специалистов.

Если Вы хотите разработать высоконагруженный проект, то мы рекомендуем рассмотреть Python / Django в качестве технической платформы. Ну а для коллег, если Вы хотите стать программистом или освоить новый язык программирования – Python будет одним из наилучших вариантов.

Курсы Python. В нашей школе стартует пятимесячный курс обучения «Разработка веб-приложений на Python / Django» — еще есть несколько мест. Чтобы записаться пишите на info@digitov.com

Новые статьи Чтобы получать наши новые статьи раньше других или просто не пропустить новые публикации — подписывайтесь на нас в Facebook, VK и Twitter.

Курсы по программированию Совсем скоро в нашей бизнес-школе Digitov стартуют курсы: Хочу стать Junior PHP Developer!, Symfony 2. Гибкая разработка и Ruby on Rails. По рельсам к профессиональной разработке. Подписывайтесь на курсы сейчас и сможете купить их со скидкой.

Источник

13 захватывающих Python-проектов на GitHub

Python является одним из самых популярных языков программирования среди тех, что выбирают профессионалы во всем мире. Его простой синтаксис позволяет разработчикам программного обеспечения и исследователям данных с легкостью приобретать новые навыки. Вы также можете найти множество проектов Python на GitHub, чтобы практиковаться и учиться одновременно.

Содержание

Почему именно проекты на Python?

На рынке вакансий высокий спрос на профессионалов, владеющих Python, но не все кандидаты обращают внимание на преимущества его использования. Этот язык имеет множество библиотек и очень удобные структуры данных. К тому же, с годами он превратился в отличный инструмент для создания приложений, запускаемых из командной строки.

Читайте также:  233 лошадиные силы налог

Если вы поищете проекты Python на GitHub, то найдете множество различных образчиков с открытым исходным кодом. В репозитории есть программы на любой вкус — от создания простого генератора паролей до автоматизации рутинных задач и анализа данных Twitter. Для новичков подход к обучению, основанный на реальных задачах, может творить чудеса. Благодаря такому подходу вы сможете изучить язык от и до, освоить фреймворки (например Pandas и Django), а также многопроцессорную архитектуру. Итак, приступим.

Python-проекты на GitHub

1. Magenta

Этот исследовательский проект Python подходит к машинному обучению через художественные проявления. Созданный командой Google Brain, проект Magenta сосредоточен на алгоритмах глубокого обучения и обучения с подкреплением. Данные алгоритмы могут создавать рисунки, музыку и так далее. Ноутбуки проекта познакомят вас с техническими деталями этого интеллектуального инструмента, призванного помочь реальным авторам в их работе.

Еще один пример расширяемого музыкального сервера, который вы можете легко найти на GitHub, — Modiply.

2. Photon

Это быстрый поисковый робот, разработанный для инструментов с открытым исходным кодом (OSINT). Концепция OSINT включает сбор данных из общедоступных источников для использования их в контексте разведки. С помощью Photon вы можете выполнять несколько функций сканирования данных, включая извлечение следующего контента:

3. Mailpile

Этот проект GitHub известен своей современной и совершенной функциональностью шифрования. Это инструмент обеспечения конфиденциальности, поддерживаемый весьма большим сообществом. В первую очередь, он позволяет отправлять и получать электронные письма с шифрованием PGP.

Быстрая поисковая система Mailpile может обрабатывать огромные объемы данных электронной почты и систематизировать их в чистом веб-интерфейсе. Данный проект использует для автоматической маркировки статические правила либо байесовские классификаторы. Чтобы узнать больше, ознакомьтесь с этим бесплатным программным обеспечением и живыми демонстрациями его работы на этом веб-сайте!

4. XSStrike

Межсайтовый скриптинг или XSS — это поиск уязвимостей в веб-приложениях. XSS-атаки внедряют клиентские, часто вредоносные, скрипты на веб-страницы, которые в остальном неопасны. Пакет XSStrike был разработан для обнаружения и использования таких атак. Этот инструмент с открытым исходным кодом обладает следующими функциями:

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

5. Google Images Download

Эта программа на Python, запускаемая из командной строки, может искать и загружать сотни изображений Google. Можно составить сценарий поиска ключевых слов и фраз, и, при желании, загружать файлы изображений. Эта библиотека совместима с версиями Python 2.x и 3.x. Вы можете скопировать исходный код этого проекта, чтобы отточить свои навыки программирования и понять его практическую применимость.

6. Pandas

Когда дело доходит до выполнения гибкого анализа и обработки данных, библиотека Pandas оказывается великолепным инструментом. Ее выразительные структуры данных предлагают много преимуществ по сравнению с другими альтернативами. Обратите внимание на некоторые из них:

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

7. Xonsh

Для интерактивных приложений требуются интерпретаторы командной строки, такие как, например, Unix. Такие операционные системы контролируют выполнение с помощью сценариев оболочки. Но разве не было бы удобнее, если бы ваша оболочка могла понимать более масштабируемый язык программирования? Здесь на сцену выходит Xonsh (произносится как «Конк»).

8. Manim

Manim разшифровывается как Mathematical Animation Engine. Этот проект посвящен программному созданию видеопрезентаций. Программа работает на Python 3.7 и создает анимированный видеоконтент, охватывающий сложные темы с помощью иллюстраций и графиков. Вы можете посмотреть эти видео на YouTube-канале 3Blue1Brown.

Исходный код Manim находится в свободном доступе на GitHub. Вы также можете обратиться к онлайн-руководствам, чтобы узнать, как установить пакет, запустить проект и создавать простые личные проекты.

9. AI Basketball Analysis

Этот проект построен на концепции обнаружения объектов. Приложение искусственного интеллекта роется в собранных данных для анализа баскетбольных бросков. Вы можете легко найти это приложение и его API на GitHub. Давайте посмотрим, как работает данный инструмент:

10. Rebound

В исходном коде компьютерных программ часто возникают ошибки компилятора. Rebound может мгновенно получить результаты запроса на форум StackOverflow по нужной ошибке.

Это инструмент командной строки, написанный на Python и построенный на пользовательском интерфейсе консоли Urwid. Если вы решите использовать этот проект, вы узнаете, как пакет Beautiful Soup извлекает содержимое из StackOverflow. Вы также можете ознакомиться с подпроцессом, который обнаруживает ошибки компилятора.

11. NeutralTalk

Вы можете отточить свои знания о мультимодальных рекуррентных нейронных сетях с помощью проекта NeutralTalk. Это Python-проект с использованием библиотеки NumPy, который фокусируется на описании изображений.

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

Если вы ищете свежий код для создания подписей, вы можете обратиться к NeutralTalk2. Написанный на Lua, легком и высокоуровневом языке программирования, этот проект работает быстрее, чем исходная версия.

Читайте также:  аванс в бухгалтерском учете это

12. Проекты TensorFlow

TensorFlow — это библиотека Python, используемая для построения моделей глубокого обучения. Репозиторий Model Garden собирает в одном месте множество примеров кода для пользователей TensorFlow. Он предназначен для демонстрации передового опыта в области исследований и разработки продуктов, а также для предоставления готовых предварительно обученных моделей. С помощью этого официального ресурса вы можете изучать, как реализуется распределенное обучение и как решаются задачи компьютерного зрения и НЛП.

13. Maps Models Importer

Maps Models Importer импортирует 3D-модели из больших карт. Это экспериментальный инструмент, содержащий только надстройку Blender, и для его работы требуется программное обеспечение 3D-контента, такое как Google Maps. На примере этого проекта вы можете научиться импортировать модели из Google Maps.

Дальнейшие возможности Python

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

Естественно, современные рекрутеры при найме на такие должности, как специалист по данным, аналитик данных, разработчик Python, инженер DevOps и так далее, придают огромное значение навыкам программирования на Python. Технологические гиганты, например Google, Facebook, Spotify, Netflix, Dropbox и Reddit, предлагают весьма прибыльные варианты карьеры кандидатам, прошедшим практическую подготовку.

Мы надеемся, что вы сможете отточить свои навыки программирования с помощью приведенного выше списка проектов Python на GitHub. По мере развития и дальнейшего расширения рынка больших данных ожидается, что в ближайшие годы сообщество Python выпустит еще больше библиотек с открытым исходным кодом. Так что следите за новостями и продолжайте учиться!

Источник

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

Авторизуйтесь

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

python apps

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

MooseAche

1 1

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

Mozzarella Ashbadger

2 1

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

Moonsweeper

3

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

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

No2Pads

4

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

Calculon

5

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

Megasolid Idiom

6

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

NSAViewer

7

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

Failamp

8

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

Brown Note (QtDesigner)

9

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

Piecasso (QtDesigner)

10

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

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

7Pez (QtDesigner)

11

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

Translataarrr (QtDesigner)

12

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

Raindar (QtDesigner)

13

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

Doughnut (PyQtGraph)

14

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

Ronery (QGraphicsScene)

15

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

Источник

Понравилась статья? Поделить с друзьями: