Собрали в одном месте самые важные ссылкии сделали Тренажер IT-инцидентов для DevOps/SRE
Несколько примеров сгенерированной музыки:
import handwritingio hwio = handwritingio.Client('KEY', 'SECRET') png = hwio.render_png({ 'handwriting_id': '2D5S46A80003', # found in our catalog or by listing handwritings 'text': 'Handwriting with Python!', 'height': 'auto', }) with open('handwriting.png', 'wb') as f: f.write(png)
Довольно развитый аналог celery на основе Redis
Планировщик задачи может работать с разными БД, даже с обычной памятью. В качестве event loop может использовать asyncio
Инструмент разрабатывали с учетом дружелюбности к разработчику. Фреймворк работает с любыми объектами в формальном виде
Проект-костыль, который позволяет запустить автосборку статики. В реализации применяется обычный while True цикл.
Интересный проект, который пытается упростить написание софта для Интернета вешей. Работает это чудо на основе websocket и wamp протокола.
import bottle import bottle_pymysql app = bottle.Bottle() # dbhost is optional, default is localhost plugin = bottle_pymysql.Plugin(dbuser='user', dbpass='pass', dbname='some_db') app.install(plugin) @app.route('/show/<item>') def show(item, pymydb): pymydb.execute('SELECT * from items where name="%s"', (item,)) row = pymydb.fetchone() if row: return template('showitem', page=row) return HTTPError(404, "Page not found")
from rc import CacheCluster cache = CacheCluster({ 'cache01': {'host': 'redis-host01'}, 'cache02': {'host': 'redis-host02'}, 'cache03': {'host': 'redis-host03'}, 'cache04': {'host': 'redis-host04', 'db': 1}, })
Модуль позволяет настроить порядок исполнения тестов исходя из их названий. Вы можете разделить тесты на unit, интеграционные.
Этот boilerplate/Шаблон реализует поддержку различных соц.сетей, прикручен Django Rest Framework, документация и много чего еще.
Код из статьи http://erikbern.com/2016/04/04/nyc-subway-math.html
import sqlite3 import tornado.ioloop import tornado.web import tornado_jsonapi.handlers import tornado_jsonapi.resource schema = { "title": "post", "properties": { "text": { "type": "string" }, "author": { "type": "string" } } } res = tornado_jsonapi.resource.DBAPI2Resource( schema, sqlite3, sqlite3.connect(':memory:')) res._create_table() application = tornado.web.Application([ ( r"/api/posts/([^/]*)", tornado_jsonapi.handlers.APIHandler, dict(resource=res) ) ]) application.listen(8888) tornado.ioloop.IOLoop.current().start()