mwutils


Namemwutils JSON
Version 0.1.41 PyPI version JSON
download
home_pagehttps://bitbucket.org/maxwin-inc/mwutils/src
Summarycdmaxwin团队常用的utils
upload_time2025-01-10 09:40:58
maintainerNone
docs_urlNone
authorcxhjet
requires_pythonNone
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            `rst file editor <http://rst.ninjs.org>`_



mwutils



maxwin 团队开发框架utils

**为了兼容windows开发环境,日期时间parse模块采用python-dateutil,但ciso8601的pars性能比之快百倍,如果是linux下安装,请先安装**

"pip install ciso8601"



安装





``$ pip install mwutils``



mw_time.py 单元





.. code-block:: python



    from mwutils.mw_time import *

    # 字符串转为本地日期时间

    print(str2datetime('2018-01-01'))

    print(str2datetime('2018-01-01T12:00:00'))

    print(str2datetime('2018-01-01T12:00:00Z'))

    print(str2datetime('2018-01-01T12:00:00+02:00'))

    # 字符串转日期

    print(str2date('2018-01-01'))

    # 字符串转时间

    print(str2time('11:11:11'))

    # 日期时间转iso8601 tz 格式字符串

    print(datetime2isostr(datetime.now()))

    # 日期时间转本地日期时间字符串

    print(datetime2str(datetime.now()))

    # 日期时间转integer时间戳

    print(datetime2timestamp(datetime.now()))

    # 时间戳转本地日期时间

    print(timestamp2datetimestr(1515579120.0))

    # get locale timezone

    print(get_locale_timezone())

    # min_time(dt1,dt2),max_time(dt1,dt2) 两个日期时间取最小和最大时间



utils.py 单元





.. code-block:: python



    from mwutils.utils import getConfig,hostname

    # 读取config.ini

    print(getConfig('./config.ini')

    # 获取电脑的 hostname

    print(hostname)



mw_consul.py 单元





> 访问consul 中的常用服务配置



.. code-block:: python



    from mw_consul import *

    # reg_service : 向consul中注册服务

    # dereg_service: 注销服务

    # AgentConf() : 獲取本機agent

    # RedisConf() : redis的配置

    # RedisConfMaster(): master redis的配置

    # RedisConfSlave():离本机最近的slave redis 配置

    # DatabaseConf('maxbus'):获取tag=maxbus的database服务的配置

    # KongConf():取kong的配置

    # KongAdminConf():取kong admin 的配置

    # KafkaConf():取kafka的配置

    # Cassandra():取Cassandra的配置

    # ServiceConf(service_name,tag):取设定tag,service_name的服务配置



cache.py 单元





> sigleton,内存中只会创建一个实例



.. code-block:: python



    from cache import Cached

    # # Example

    class Spam(metaclass=Cached):

      def __init__(self, name):

          print('Creating Spam({!r})'.format(name))

          self.name = name



sendemail.py 单元





> 发送邮件



.. code-block:: python



    from sendemail import Emailsender





Changes



0.1.41

- 允许KongConf 按tag 从consul中载入kong配置



0.1.39

- DatabaseConf增加判断是否db_have_changed



0.1.33

- Redis 配置支持哨兵模式



0.1.30

- 解决linux 下 str2datetime('20201009101112') 会报错的问题





0.1.29

windows下用dateutil做时间字串parse



0.1.28

修正从consul的kv中取redis db 失败的问题



0.1.27 (2018-12-19)

- 重整mw_consul单元的类



0.1.24 (2018-10-31)

- 解决非Unicode中文环境下不能安装的问题



0.1.23 (2018-10-29)

- 在mw_time单元中增加对iso6801日期时间的支持,增加了部分常用日期时间的处理

- 删除 register_kong.py






            

Raw data

            {
    "_id": null,
    "home_page": "https://bitbucket.org/maxwin-inc/mwutils/src",
    "name": "mwutils",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": null,
    "author": "cxhjet",
    "author_email": "cxhjet@qq.com",
    "download_url": "https://files.pythonhosted.org/packages/54/f8/d5438b43cb62109325e768403b9aea772315bd09b18f26c088af627d31ae/mwutils-0.1.41.tar.gz",
    "platform": null,
    "description": "`rst file editor <http://rst.ninjs.org>`_\r\r\n\r\r\nmwutils\r\r\n\r\r\nmaxwin \u56e2\u961f\u5f00\u53d1\u6846\u67b6utils\r\r\n**\u4e3a\u4e86\u517c\u5bb9windows\u5f00\u53d1\u73af\u5883\uff0c\u65e5\u671f\u65f6\u95f4parse\u6a21\u5757\u91c7\u7528python-dateutil\uff0c\u4f46ciso8601\u7684pars\u6027\u80fd\u6bd4\u4e4b\u5feb\u767e\u500d\uff0c\u5982\u679c\u662flinux\u4e0b\u5b89\u88c5\uff0c\u8bf7\u5148\u5b89\u88c5**\r\r\n\"pip install ciso8601\"\r\r\n\r\r\n\u5b89\u88c5\r\r\n\r\r\n\r\r\n``$ pip install mwutils``\r\r\n\r\r\nmw_time.py \u5355\u5143\r\r\n\r\r\n\r\r\n.. code-block:: python\r\r\n\r\r\n    from mwutils.mw_time import *\r\r\n    # \u5b57\u7b26\u4e32\u8f6c\u4e3a\u672c\u5730\u65e5\u671f\u65f6\u95f4\r\r\n    print(str2datetime('2018-01-01'))\r\r\n    print(str2datetime('2018-01-01T12:00:00'))\r\r\n    print(str2datetime('2018-01-01T12:00:00Z'))\r\r\n    print(str2datetime('2018-01-01T12:00:00+02:00'))\r\r\n    # \u5b57\u7b26\u4e32\u8f6c\u65e5\u671f\r\r\n    print(str2date('2018-01-01'))\r\r\n    # \u5b57\u7b26\u4e32\u8f6c\u65f6\u95f4\r\r\n    print(str2time('11:11:11'))\r\r\n    # \u65e5\u671f\u65f6\u95f4\u8f6ciso8601 tz \u683c\u5f0f\u5b57\u7b26\u4e32\r\r\n    print(datetime2isostr(datetime.now()))\r\r\n    # \u65e5\u671f\u65f6\u95f4\u8f6c\u672c\u5730\u65e5\u671f\u65f6\u95f4\u5b57\u7b26\u4e32\r\r\n    print(datetime2str(datetime.now()))\r\r\n    # \u65e5\u671f\u65f6\u95f4\u8f6cinteger\u65f6\u95f4\u6233\r\r\n    print(datetime2timestamp(datetime.now()))\r\r\n    # \u65f6\u95f4\u6233\u8f6c\u672c\u5730\u65e5\u671f\u65f6\u95f4\r\r\n    print(timestamp2datetimestr(1515579120.0))\r\r\n    # get locale timezone\r\r\n    print(get_locale_timezone())\r\r\n    # min_time(dt1,dt2),max_time(dt1,dt2) \u4e24\u4e2a\u65e5\u671f\u65f6\u95f4\u53d6\u6700\u5c0f\u548c\u6700\u5927\u65f6\u95f4\r\r\n\r\r\nutils.py \u5355\u5143\r\r\n\r\r\n\r\r\n.. code-block:: python\r\r\n\r\r\n    from mwutils.utils import getConfig,hostname\r\r\n    # \u8bfb\u53d6config.ini\r\r\n    print(getConfig('./config.ini')\r\r\n    # \u83b7\u53d6\u7535\u8111\u7684 hostname\r\r\n    print(hostname)\r\r\n\r\r\nmw_consul.py \u5355\u5143\r\r\n\r\r\n\r\r\n> \u8bbf\u95eeconsul \u4e2d\u7684\u5e38\u7528\u670d\u52a1\u914d\u7f6e\r\r\n\r\r\n.. code-block:: python\r\r\n\r\r\n    from mw_consul import *\r\r\n    # reg_service : \u5411consul\u4e2d\u6ce8\u518c\u670d\u52a1\r\r\n    # dereg_service\uff1a \u6ce8\u9500\u670d\u52a1\r\r\n    # AgentConf() : \u7372\u53d6\u672c\u6a5fagent\r\r\n    # RedisConf() : redis\u7684\u914d\u7f6e\r\r\n    # RedisConfMaster()\uff1a master redis\u7684\u914d\u7f6e\r\r\n    # RedisConfSlave():\u79bb\u672c\u673a\u6700\u8fd1\u7684slave redis \u914d\u7f6e\r\r\n    # DatabaseConf('maxbus'):\u83b7\u53d6tag=maxbus\u7684database\u670d\u52a1\u7684\u914d\u7f6e\r\r\n    # KongConf\uff08\uff09\uff1a\u53d6kong\u7684\u914d\u7f6e\r\r\n    # KongAdminConf\uff08\uff09\uff1a\u53d6kong admin \u7684\u914d\u7f6e\r\r\n    # KafkaConf\uff08\uff09\uff1a\u53d6kafka\u7684\u914d\u7f6e\r\r\n    # Cassandra()\uff1a\u53d6Cassandra\u7684\u914d\u7f6e\r\r\n    # ServiceConf(service_name,tag)\uff1a\u53d6\u8bbe\u5b9atag\uff0cservice_name\u7684\u670d\u52a1\u914d\u7f6e\r\r\n\r\r\ncache.py \u5355\u5143\r\r\n\r\r\n\r\r\n> sigleton\uff0c\u5185\u5b58\u4e2d\u53ea\u4f1a\u521b\u5efa\u4e00\u4e2a\u5b9e\u4f8b\r\r\n\r\r\n.. code-block:: python\r\r\n\r\r\n    from cache import Cached\r\r\n    # # Example\r\r\n    class Spam(metaclass=Cached):\r\r\n      def __init__(self, name):\r\r\n          print('Creating Spam({!r})'.format(name))\r\r\n          self.name = name\r\r\n\r\r\nsendemail.py \u5355\u5143\r\r\n\r\r\n\r\r\n> \u53d1\u9001\u90ae\u4ef6\r\r\n\r\r\n.. code-block:: python\r\r\n\r\r\n    from sendemail import Emailsender\r\r\n\r\r\n\r\n\r\nChanges\r\r\n\r\r\n0.1.41\r\r\n- \u5141\u8bb8KongConf \u6309tag \u4ececonsul\u4e2d\u8f7d\u5165kong\u914d\u7f6e\r\r\n\r\r\n0.1.39\r\r\n- DatabaseConf\u589e\u52a0\u5224\u65ad\u662f\u5426db_have_changed\r\r\n\r\r\n0.1.33\r\r\n- Redis \u914d\u7f6e\u652f\u6301\u54e8\u5175\u6a21\u5f0f\r\r\n\r\r\n0.1.30\r\r\n- \u89e3\u51b3linux \u4e0b str2datetime('20201009101112') \u4f1a\u62a5\u9519\u7684\u95ee\u9898\r\r\n\r\r\n\r\r\n0.1.29\r\r\nwindows\u4e0b\u7528dateutil\u505a\u65f6\u95f4\u5b57\u4e32parse\r\r\n\r\r\n0.1.28\r\r\n\u4fee\u6b63\u4ececonsul\u7684kv\u4e2d\u53d6redis db \u5931\u8d25\u7684\u95ee\u9898\r\r\n\r\r\n0.1.27 (2018-12-19)\r\r\n- \u91cd\u6574mw_consul\u5355\u5143\u7684\u7c7b\r\r\n\r\r\n0.1.24 (2018-10-31)\r\r\n- \u89e3\u51b3\u975eUnicode\u4e2d\u6587\u73af\u5883\u4e0b\u4e0d\u80fd\u5b89\u88c5\u7684\u95ee\u9898\r\r\n\r\r\n0.1.23 (2018-10-29)\r\r\n- \u5728mw_time\u5355\u5143\u4e2d\u589e\u52a0\u5bf9iso6801\u65e5\u671f\u65f6\u95f4\u7684\u652f\u6301,\u589e\u52a0\u4e86\u90e8\u5206\u5e38\u7528\u65e5\u671f\u65f6\u95f4\u7684\u5904\u7406\r\r\n- \u5220\u9664 register_kong.py\r\r\n\r\r\n\r\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "cdmaxwin\u56e2\u961f\u5e38\u7528\u7684utils",
    "version": "0.1.41",
    "project_urls": {
        "Homepage": "https://bitbucket.org/maxwin-inc/mwutils/src"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "54f8d5438b43cb62109325e768403b9aea772315bd09b18f26c088af627d31ae",
                "md5": "1cad4b095aecc2798cc6774a11d287e4",
                "sha256": "56f3c2f03447f0b48b2a28d6e8a51331ddcfd9f80654425ced645c7a4abf507e"
            },
            "downloads": -1,
            "filename": "mwutils-0.1.41.tar.gz",
            "has_sig": false,
            "md5_digest": "1cad4b095aecc2798cc6774a11d287e4",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 14269,
            "upload_time": "2025-01-10T09:40:58",
            "upload_time_iso_8601": "2025-01-10T09:40:58.174822Z",
            "url": "https://files.pythonhosted.org/packages/54/f8/d5438b43cb62109325e768403b9aea772315bd09b18f26c088af627d31ae/mwutils-0.1.41.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-10 09:40:58",
    "github": false,
    "gitlab": false,
    "bitbucket": true,
    "codeberg": false,
    "bitbucket_user": "maxwin-inc",
    "bitbucket_project": "mwutils",
    "lcname": "mwutils"
}
        
Elapsed time: 1.66097s