python
ZJL-阿友
这个作者很懒,什么都没留下…
展开
-
python监控windows服务器的进程和服务
需求:软件公司提供的软件服务在服务器上会莫名其妙的挂掉,他们采用的方法也只有重启服务器,重启时间太久了,所以像弄一个监测进程和服务的程序,监测到挂了就重启进程或者服务。原创 2024-05-29 14:44:14 · 292 阅读 · 0 评论 -
sqlalchemy 多数据源
【代码】sqlalchemy 多数据源。原创 2023-04-23 14:19:34 · 310 阅读 · 0 评论 -
简单设计自动客服
思路:在之前的公司设计过类似的系统的,不过因为之前公司数据量比较大,所以使用的是elasticsearch,然后是mysql数据同步elasticsearch,使用elasticsearch的分词器,检索数据,但是现在数据量很小,用不了elasticsearch,所以我就使用字符串相似度来查找相似的数据当作回复数据。需求:设计一个简单的自动客服系统,内部使用,用于给其他部门查看操作手册简单问题处理方案之类。以下代码是最简单的实现,不涉及数据库。原创 2023-04-23 14:15:53 · 222 阅读 · 0 评论 -
python docx转html 并且 requests上传图片
需求:将docx文件转成html,再将当中的图片上传服务器,将html保存数据库,用于展示。原创 2023-04-18 14:37:57 · 323 阅读 · 0 评论 -
pyqt拖拽文件例子
pyqt拖拽文件例子原创 2023-02-27 09:10:24 · 411 阅读 · 0 评论 -
pyinstaller打包FastAPI问题集合
打包fastapi问题集合原创 2022-07-08 13:15:23 · 1244 阅读 · 0 评论 -
python复制文件
python复制文件公司一个程序同步出问题,写了一个定时同步的脚本需要一个filename.json的配置文件格式:{ "path_read":"D:\\xx\\xx", "path_write":"E:\\xx\\xx"}程序代码:import osimport sysimport jsonfrom shutil import copyfile # 复制一个文件到另一个文件夹下 copyfile(src,dst) import schedule# 递归函原创 2022-05-16 16:53:12 · 867 阅读 · 0 评论 -
截图翻译-python实现
截图翻译-python实现因为看到TextShot和translators两个python的github项目,想着可以做一个截图翻译软件,于是合了一下pyqt5 截屏,图片识别文字的代码准备工作需要先安装 Tesseract OCR,并且加入Path路径Tesseract OCR下载地址python需要的库Pillow==9.1.0PyQt5==5.15.6PyQt5-sip==12.10.1PyQt5-stubs==5.15.6.0py-notifier==0.3.2pypercli原创 2022-05-14 15:38:43 · 742 阅读 · 0 评论 -
Python CLI 开发 entry_point click
Python CLI 开发 entry_point click命令行打包目录结构:testhellopython.pysetup.pyhellopython.py 文件内容:# hellopython.pypy_str = """Hello Python !!!!"""def main(): print(py_str)if __name__ == '__main__': main()setup.py 文件内容:# setup.pyfrom set原创 2022-05-13 13:00:39 · 289 阅读 · 0 评论 -
记一次python处理excel问题的经历
需求:因为需要处理一份excel,有样式,手机,身份证显示为科学计数法,400多行,修改身份证单元格数据遇到的问题:用xlwt,但是报ValueError: column index (256) not an int in range(256)无法处理255行以上的数据2. xlrd 的 formatting_info=True 不支持xlsx格式文件,所以无法保留原有样式3. 身份证的科学计数法不知道怎么转成字符串再拼接别的字符串解决方式使用openpyxlimport open原创 2022-04-15 09:26:23 · 485 阅读 · 0 评论 -
python获取当前日期所在的是本月第几周
def get_week(date_str=None): if date_str and isinstance(date_str, str): now_time = datetime.strptime(date_str + " 00:00:00", "%Y-%m-%d %H:%M:%S") else: now_time = datetime.now().replace(hour=0, minute=0, second=0, microsecond=0) .原创 2020-06-02 14:59:00 · 7328 阅读 · 0 评论 -
git-flow使用记录
1. 安装 a. brew install git-flow 2. 开发新功能 git flow feature 分支功能 a. Feature 分支是基于 develop 分支的。 b. 案例: i. 开启分支:git flow feature start test-1110 ii. 和正常流程一样. git commit git push 等操作。 iii. 完成开发: g...原创 2020-05-13 17:23:59 · 237 阅读 · 0 评论 -
mac 安装 mysqlclient 后使用报错问题
一直报错所以一直尝试网上的方法,也不清楚哪些有效哪些无效了,就纯记录一下步骤了安装mysql8(官网下载),系统自带的python3.7,brew 安装mysql-client、openssl,添加path# mysqlexport PATH="$PATH":/usr/local/mysql/binexport DYLD_LIBRARY_PATH=/usr/local/mysql/lib/:$DYLD_LIBRARY_PATH# mysql-clientexport PATH原创 2020-05-13 17:06:11 · 773 阅读 · 2 评论 -
python交互模式热加载究极实现方式
之前写了一个热加载的python shell模式,但是不能支持多行,于是我就直接去看了python code模块的源码,然后扒下来,自己加上文件检测的函数,就成了一个可以热加载的python shell模式创建一个 py_code.py 文件"""Utilities needed to emulate Python's interactive interpreter."""# I...原创 2020-03-26 17:05:07 · 1508 阅读 · 0 评论 -
简单实现热加载python交互模式(利用文件修改时间 和 python模块重载)
最近写公司 项目的时候碰到一个问题,公司使用flask,在自测单个模块下的函数会用到flask自带的shell调试,但是这个shell有一个问题就是无发热加载,每次修改了文件,就要退出重新进入,然后在输入from ..... import .... 然后开始执行函数,效率极其低下,还让人有点恼火,所以我就想写一个可以热加载的shell,提高一下效率,因为时间比较短,所以比较简陋,不过目前能满足我的...原创 2020-03-25 11:12:18 · 1318 阅读 · 0 评论 -
python 上下文管理器详解
python的上下文管理器看了很多解释vamei的python教程:上下文管理器(context manager)是Python2.5开始支持的一种语法,用于规定某个对象的使用范围。一旦进入或者离开该使用范围,会有特殊操作被调用 (比如为对象分配或者释放内存)。它的语法形式是with...as...python编程时光:1. 上下文表达式:with open('test.tx...原创 2020-03-13 16:42:42 · 368 阅读 · 0 评论 -
python浅拷贝和深拷贝和直接赋值
import copya = [1,2,3,4]id(a)# 4386320704b = copy.copy(a) # 浅拷贝id(b)# 4384379840c = a # 赋值id(c)# 4386320704d = copy.deepcopy(a) # 深拷贝id(d)# 4425048864"""以上可以看出,只有直接赋值的内存地址和原数据的相...原创 2020-03-13 11:12:26 · 195 阅读 · 0 评论 -
sql查询结果后面加上列表数据,并实现分页
"""sql查询结果后面加上列表数据,并实现分页"""a = [1,2,3,4,5,6,7,8] # 模拟SQL查询出来的数据b = [9,10,11,12,13,14,15,16] # x需要添加的数据total = len(a) # sql数据的总数page = 4 # 页码page_size = 5 # 每页数量page_total = page * page...原创 2020-02-07 15:25:10 · 921 阅读 · 0 评论 -
ubuntu下python模拟键盘
import virtkeyimport timeimport webbrowserwebbrowser.open("/home/pi/nw_js/test.html") #打开默认浏览器跳到指定页面time.sleep(10) #暂停1秒v = virtkey.virtkey() #调用系统键盘v.press_keysym(65480) #pess是按下键原创 2016-05-08 21:32:23 · 10018 阅读 · 1 评论 -
jquery ajax flask 前后端通讯
如题,以自己的博客为例,抓取博客信息,一个api后台服务提供数据,前端服务接收数据并展示目录结构:test|----app |----__init__.py |----flaskapp.py(后台服务)|----blogtest |----index.html(首页) |----gettitle.html(标题原创 2017-07-09 17:36:48 · 1452 阅读 · 0 评论 -
nginx的一些简单配置
mac下修改/usr/local/nginx/conf/nginx.conf配置文件反向代理加负载均衡:user nobody;worker_processes auto;#nginx 进程数,建议按照cpu 数目来指定,一般为它的倍数,auto是自动检测#一个nginx 进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit -n)与nginx 进程数相除,原创 2017-07-18 14:55:55 · 582 阅读 · 0 评论 -
Elasticsearch同步mysql(logstash-input-jdbc)和一些查询问题
linux环境下:安装logstash:1.下载公共密钥rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch2.添加yum源vim /etc/yum.repos.d/logstash.repo文件中写入:[logstash-5.x]name=Elastic repository for 5.x p原创 2017-09-07 16:24:28 · 2988 阅读 · 0 评论 -
自制搜索(elasticsearch安装,mongo-connector同步数据,python操作)
做一个搜索,以es为基础,数据存在mongodb1:Elasticsearch下载:elasticsearch下载地址https://www.elastic.co/downloads/elasticsearch安装:修改elasticsearch-5.5.1/config/elasticsearch.yml# 集群名称cluster.name: myElast原创 2017-08-13 18:24:44 · 1385 阅读 · 0 评论 -
用python简单实现mysql数据同步到ElasticSearch
之前博客有用logstash-input-jdbc同步mysql数据到ElasticSearch,但是由于同步时间最少是一分钟一次,无法满足线上业务,所以只能自己实现一个,但是时间比较紧,所以简单实现一个思路:网上有很多思路用什么mysql的binlog功能什么的,但是我对mysql了解实在有限,所以用一个很呆板的办法查询mysql得到数据,再插入es,因为数据量不大,而且10秒间隔同步一原创 2017-09-14 19:34:36 · 6676 阅读 · 0 评论 -
python opencv 检测移动物体并截图保存
最近在老家找工作,无奈老家工作真心太少,也没什么面试机会,不过之前面试一家公司,提了一个有意思的需求,检测河面没有有什么船只之类的物体,我当时第一反应是用opencv做识别,不过回家想想,河面相对的东西比较少,画面比较单一,只需要检测有没有移动的物体不就简单很多嘛,如果做街道垃圾检测的话可能就很复杂了,毕竟街道上行人,车辆,动物,很多干扰物,于是就花了一个小时写了一个小的demo,只需在程序同级目...原创 2018-02-27 16:01:25 · 6835 阅读 · 4 评论 -
个人博客系统(vue,flask)
个人博客系统前端使用vue,css使用pure,后端使用flask,数据库mysql,token存储使用redis项目涉及到了vue,vuex,vue-router,axios,子父组件props传值,分页组件,router路由过滤,router子路由,vuex与sessionstorage组合,富文本编辑器summernote,等,打包以后放在nginx,感觉涉及到了很多知识点,收获挺多的后台是...原创 2018-04-27 23:57:29 · 7903 阅读 · 0 评论 -
flask bottle gunicorn gevent meinheld 组合测试性能(简单读写mongodb)
简单的性能测试:通用的代码:config.py(主要用于gunicorn配制gevent或者meinheld,切换模式就可以在不改变其他代码的情况下使用gevent或者meinheld):# -*-coding:utf-8 -*-__author__ = "ZJL"import gevent.monkeyimport multiprocessinggevent.monke原创 2017-07-10 23:03:45 · 2653 阅读 · 0 评论 -
Redis在mac和windows下安装
Mac安装参考https://my.oschina.net/jackieyeah/blog/524583启动:/usr/local/bin/redis-server /usr/local/etc/redis.conf进入命令行:cd /usr/local/bin./redis-cli安装Redis Desktop Manager打开终端输原创 2017-02-27 22:46:58 · 1008 阅读 · 0 评论 -
任务调度Celery
安装:pip install -U Celery中间件redis需要安装: pip install -U celery-with-redis简单的任务:#tasks.py# -*-coding:utf-8-*-"""ayou"""from celery import Celery#broker,是中间人(任务队列本身),Celery 扮演生产者和消费者原创 2017-02-27 22:37:36 · 891 阅读 · 0 评论 -
python xlrd库的简单使用
今天碰到一个Excel文件就用xlrd玩一下工作表一:工作表二:根据表一中的编号找到表二中相同编号的商品,做成一个一对多的关系,如果表二中没有就不要代码:# -*-coding:utf-8-*-"""zjl"""import xlrd#打开文件data = xlrd.open_workbook('test.xlsx')#打开工作表table原创 2016-09-29 15:22:23 · 27474 阅读 · 0 评论 -
python-SMTP发邮件
# -*- coding: utf-8 -*-from email import encodersfrom email.header import Headerfrom email.mime.text import MIMETextfrom email.MIMEMultipart import MIMEMultipartfrom email.utils import parseaddr原创 2015-03-26 18:59:53 · 8090 阅读 · 0 评论 -
Python 判断质数
Python 判断质数原创 2014-11-07 08:34:43 · 9979 阅读 · 0 评论 -
用python将SQL格式文件改成自己想要的格式
INSERT INTO TTT (NSAME, ID, AGE) VALUES ('AAA', '201023210816', '22');将上面的SQL格式改成下面的格式AAA|201023210816|22import oslists=[]paths = os.getcwd()for root,dirs,files in os.walk('wfyh'):原创 2014-10-10 08:20:54 · 9502 阅读 · 0 评论 -
python解决一些错误换行问题
有时候会碰到一些错误换行的数据,比如正确数据应该是:20141010,aaa,bbb,ccc,ddd,eee但是实际给过来的数据是:20141010,aaa,bbb,ccc,ddd,eee这样出现错误换行,在进行一些数据处理时就不能通过解决办法:import redfile=open('tt.txt','r')lists=[]for line in df原创 2014-10-10 08:29:02 · 10680 阅读 · 0 评论 -
Anaconda 安装+使用+换源+更新
anaconda官网下载安装:https://www.continuum.io/downloads/anaconda用法:查看已经安装的包:pip list 或者 conda list安装和更新:pip install requestspip install requests --upgrade或者conda install requests原创 2017-03-01 14:54:27 · 138455 阅读 · 4 评论 -
python 商品名称相似度查找(difflib库和结巴分词的运用)
今天同事被告知要写一个查询商品相似度的系统,我以为事类似推荐系统一样的高大上系统,心中暗自庆幸没有被委以如此重任,不然在紧迫的时间里学习实现这套系统一定会睡眠不足的,后来同事讲解后我才知道只是一个商品名称相似度查找的小系统,说白了就是字符串相似度!关于字符串相似度python也有很多库,比如自带的difflib库,第三方Levenshtein库等等关于字符串相似度的原理我网上找了一篇博客看原创 2016-09-29 02:53:04 · 22720 阅读 · 4 评论 -
bottle的gunicorn+gevent部署 和 gunicorn+meinheld 部署
config.py(gunicorn+gevent):# -*-coding:utf-8 -*-__author__ = "ZJL"import gevent.monkeyimport multiprocessinggevent.monkey.patch_all()# 监听本机的5000端口bind = '0.0.0.0:5000'preload_app = True#原创 2017-07-17 22:56:08 · 2652 阅读 · 0 评论 -
flask+gunicorn+meinheld部署
configm.py:# -*-coding:utf-8 -*-__author__ = "ZJL"import multiprocessing# 监听本机的5000端口bind = '0.0.0.0:5000'preload_app = True# 开启进程# workers=4workers = multiprocessing.cpu_count() * 2 +原创 2017-07-17 22:45:59 · 5030 阅读 · 0 评论 -
tornado图片服务
tornado上传获取图片的服务,上传限制图片大小,防止重复上传相同图片对比图片相同的原理是对比图片的大小和图片sha1加密值目录结构:OssService|----common | ----__init__.py |----rest_result.py(定义响应的错误信息)|----handler |----__i原创 2017-07-16 23:10:38 · 1795 阅读 · 0 评论 -
sqlalchemy对sql的简单操作
# -*-coding:utf-8 -*-__author__ = "ZJL"from sqlalchemy import create_enginefrom sqlalchemy.pool import QueuePoolfrom sqlalchemy.orm import sessionmakerimport traceback#用于需要回滚和提交的操作def alte原创 2017-04-21 19:21:17 · 907 阅读 · 0 评论