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

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

     14.04.2016       Выпуск 121 (11.04.2016 - 17.04.2016)       Интересные проекты, инструменты, библиотеки

tasktiger - очередь задач (использует Redis) task queue task Redis

Довольно развитый аналог celery на основе Redis

     13.04.2016       Выпуск 121 (11.04.2016 - 17.04.2016)       Интересные проекты, инструменты, библиотеки

Advanced Python Scheduler (APScheduler) - планировщик задач asyncio sheduler

Планировщик задачи может работать с разными БД, даже с обычной памятью. В качестве event loop может использовать asyncio

     13.04.2016       Выпуск 121 (11.04.2016 - 17.04.2016)       Интересные проекты, инструменты, библиотеки

Dependency Injector — Python dependency injection framework dependency injection DI

Инструмент разрабатывали с учетом дружелюбности к разработчику. Фреймворк работает с любыми объектами в формальном виде

     12.04.2016       Выпуск 121 (11.04.2016 - 17.04.2016)       Интересные проекты, инструменты, библиотеки

django-static-autocollect - запускаем collectstatic автоматически Django static

Проект-костыль, который позволяет запустить автосборку статики. В реализации применяется обычный while True цикл. 

     12.04.2016       Выпуск 121 (11.04.2016 - 17.04.2016)       Интересные проекты, инструменты, библиотеки

Autobahn|Python - real-time framework для Web, Mobile & Internet of Things IoT framework

Интересный проект, который пытается упростить написание софта для Интернета вешей. Работает это чудо на основе websocket и wamp протокола.

     12.04.2016       Выпуск 121 (11.04.2016 - 17.04.2016)       Интересные проекты, инструменты, библиотеки

bottle-pymysql - MySQL для Bottle bottle mysql

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")

     12.04.2016       Выпуск 121 (11.04.2016 - 17.04.2016)       Интересные проекты, инструменты, библиотеки

rc - Redis cache cluster system Redis cache cluster

from rc import CacheCluster

cache = CacheCluster({
    'cache01': {'host': 'redis-host01'},
    'cache02': {'host': 'redis-host02'},
    'cache03': {'host': 'redis-host03'},
    'cache04': {'host': 'redis-host04', 'db': 1},
})

     10.04.2016       Выпуск 120 (04.04.2016 - 10.04.2016)       Интересные проекты, инструменты, библиотеки

pytest-reorder - изменяем порядок исполнения тестов unittest pytest tests

Модуль позволяет настроить порядок исполнения тестов исходя из их названий. Вы можете разделить тесты на unit, интеграционные.

     08.04.2016       Выпуск 120 (04.04.2016 - 10.04.2016)       Интересные проекты, инструменты, библиотеки

django-hackathon-starter - шаблон Django с кучей вкусняшек django boilerplate hackathon

Этот boilerplate/Шаблон реализует поддержку различных соц.сетей, прикручен Django Rest Framework, документация и много чего еще.

     08.04.2016       Выпуск 120 (04.04.2016 - 10.04.2016)       Интересные проекты, инструменты, библиотеки

tornado_jsonapi - REST JSON API для Tornado API REST JSON API REST Tornado

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()

     06.04.2016       Выпуск 120 (04.04.2016 - 10.04.2016)       Интересные проекты, инструменты, библиотеки

pia - делаем цепочки requests вызовов

Модуль позволяет реализовать цепочки http запросов, например, достать данные из одного источника, а затем эти данные послать в другой сервис