معرفی شرکت ها


clickhouse-driver-decorators-0.2.0


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Bunch of decorators to decorate clickhouse-driver's execute method
ویژگی مقدار
سیستم عامل -
نام فایل clickhouse-driver-decorators-0.2.0
نام clickhouse-driver-decorators
نسخه کتابخانه 0.2.0
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Islam Israfilov (Islam93)
ایمیل نویسنده israfilov93@gmail.com
آدرس صفحه اصلی https://github.com/Islam93/clickhouse-driver-decorators
آدرس اینترنتی https://pypi.org/project/clickhouse-driver-decorators/
مجوز MIT
### clickhouse-driver-decorators ![license](https://img.shields.io/badge/license-MIT-brightgreen) ![python](https://img.shields.io/badge/python-%3E%3D3.5-blue) ![coverage](https://img.shields.io/badge/coverage-100%25-green) Bunch of decorators to decorate [clickhouse-driver's](https://github.com/mymarilyn/clickhouse-driver) `execute` method #### Available decorators: 1. `add_column_names` -- converts each row to dict or namedtuple with column names as keys; 2. `apply_callback` -- applies a given callback to each row of result; 3. `convert_string_to_datetime` -- converts string datetime to python datetime object in a needed timezone for a given column. String datetime have to be in UTC; 4. `convert_timestamp_to_datetime` -- converts timestamp to python datetime object in a needed timezone for a given column. 5. `transform_to_pandas_dataframe` -- creates pandas frame based on result from db #### Examples For a closer look, check out the [tests](tests) ```python from typing import Generator from pandas import DataFrame from clickhouse_driver import Client from clickhouse_driver_decorators import * def replace_empty_with_none(row: tuple) -> Generator: yield tuple([None if v == '' else v for v in row]) class A: def __init__(self, client: Client): self.__client = client def get_data(self) -> Generator[]: return self.__decorated_execute(""" select toUnixTimestamp(now()) as now_ts, formatDateTime(now(), '%F %T', 'UTC') as now_str, '' as empty """) @add_column_names() @apply_callback(on_row_callable=replace_empty_with_none) @convert_timestamp_to_datetime(columns_to_convert={'now_ts': 'Europe/Moscow'}) @convert_string_to_datetime(date_format='%Y-%m-%d %H:%M:%S', columns_to_convert={'now_str': 'Europe/Moscow'}) def __decorated_execute(self, query: str): return self.__client.execute(query, with_column_types=True) class B: def __init__(self, client: Client): self.__client = client def get_pandas_df(self) -> DataFrame: return self.__decorated_execute("select 'val1' as col1, 'val2' as col2") @transform_to_pandas_dataframe() def __decorated_execute(self, query: str): return self.__client.execute(query, with_column_types=True) ```


نیازمندی

مقدار نام
>=2021.1 pytz
>=0.25.3 pandas
>=0.1.3 clickhouse-driver
>=6.1.2 pytest
>=2.11.1 pytest-cov
>=3.0.5 mock
>=2.6.0 pylint
>=6.1.2 pytest
>=2.11.1 pytest-cov
>=3.0.5 mock


زبان مورد نیاز

مقدار نام
>=3.5 Python


نحوه نصب


نصب پکیج whl clickhouse-driver-decorators-0.2.0:

    pip install clickhouse-driver-decorators-0.2.0.whl


نصب پکیج tar.gz clickhouse-driver-decorators-0.2.0:

    pip install clickhouse-driver-decorators-0.2.0.tar.gz