python中的日志模板logoru及常用参数配置解析
Python中有一个内置的日志标准库——logging,但开发中涉及到日志记录时,基本都不会采用它,因为其在配置上较为繁琐。同时在多线程或多进程的场景下,若不进行特殊处理还会导致日志记录异常。其替代品就是一个优雅、简洁的日志记录第三方库——loguru,导入封装的logger类,即可直接进行调用和日志处理,非常方便实用。 #安装logoru模块 pip3installloguru #引入和调用logoru fromloguruimportlogger logger.debug('Thisisdebuginformation') logger.info('Thisisinfoinformation') logger....[>>…]
Python使用pip安装install模块时指定默认源
经常安装的时候收到提示:WARNING:Retrying(Retry(total=4,connect=None,read=None,redirect=None,status=None))afterconnectionbrokenby'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnectobjectat0x00000195FDBFC6A0>,'Connectiontopypi.orgtimedout.(connecttimeout=15)')':/simple/crypto/这和本地的网络限制和网速有关,之前在docker容器中也碰到过类似情形,见地址:http://47.93.183.36/article/1034.html 可以通过指定python源的方式来进行安装,如下指定源为...[>>…]
FastApi自定义接口文档/docs中的静态资源文件
之前写过一篇文章:http://47.93.183.36/article/915.html是通过修改fastapi的库文件里的代码来实现接口文档/docs中静态资源文件修改为本地文件,但这样的方法并不是一个好方法,因为在部署环境时要去修改镜像里的库文件代码,不正规不方便。实际fastapi在其文档里有相关的功能描述,地址https://fastapi.tiangolo.com/advanced/extending-openapi/?h=get_swagger_ui_html#serve-the-static-files其中的例子简化修改一下如下: #引入库要的库 fromfastapiimportFastAPI fromfastapi.openapi....[>>…]
pip安装sentence-transformers时的一些报错记录
之前记的一些记录,也不知道是什么时候记下来的,不想删除放这里存着吧。pip3install-Usentence-transformerspip3install-Utransformers下载太慢甚至超时,urllib3.exceptions.ReadTimeoutError:HTTPSConnectionPool(host='files.pythonhosted.org',port=443):Readtimedout。直接指定下载源,解决问题。也可以配置vim~/pip/pip.conf文件中的源地址,一劳永逸。pipinstall-ihttps://pypi.douban.com/simple-Usentence-transformersModuleNotFoundError:Nomodulenamed'setuptools_rust' 解决办法:升级pip,然后再...[>>…]
Python使用clickhouse_driver操作clickhouse数据库
Python要实现使用clickhouse_driver操作clickhouse数据库,首先需要安装clickhouse_driver模块:pipinstallclickhouse_driverPIP安装的时候有时会遇到WARNING:Retrying(Retry(total=4,connect=None,read=None,redirect=None,status=None))afterconnectionbrokenby'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnectionobjectat0x7fd06b379a90>:Failedtoestablishanewconnection:[Errno-3]Temporaryfailureinnameresolution')':/simple/clickhouse-driver/。如果不是...[>>…]
Python中读取程序中的进程和线程ID
程序调试的时候有时需要看看当前程序的进程和线程ID,可以使用如下的方法。 #引入OS和psutil库 importos importpsutil importthreading #取得python进程数据 pid=os.getpid() p=psutil.Process(pid) print('PID:%d'%pid) print('PNAME:%s'%p.name()) print(p.__dict__) #取得线程ID数据 t=threading.currentThread() print("TID:%d"%t.ident) print("TID:%d"%t.name) print("TNAME:%S"%t.getName()) print(t.__dict__) #print(p)打印出来的结果 psutil.Process(pid=14572,name='python.ex...[>>…]
Pymysql中Mysql连接默认会开启事务处理-数据表名行数列表SQL
PyMySQL是Python3.x版里用于连接处理MySQL业务的库,在之前的Python2版本中是使用mysqldb,使用时引入类库后直接执行connect方法,其中要注意的两个选项,设置connect_timeout控制连接时间,设置cursorclass=pymysql.cursors.DictCursor从而使mysql返回的结果中包含字段,如果不设置执行完毕返回的结果集默认以元组形式。如下示例: #导入pymysql连接database importpymysql con=pymysql.connect( host="", user="", password="", database="", port="", cursorclass=pymysql.cursors.Dic...[>>…]