- 博客(58)
- 资源 (14)
- 收藏
- 关注
原创 图像处理Python库--图片裁剪、缩放、灰度图、圆角等
Python图像处理库基于Pillow做的开发,可以对图片进行裁剪、缩放、灰度图、透明度、圆角、高斯模糊、旋转、水印、图像合并、格式转换、质量转换、设置渐近显示等操作。同时还提供了提取图像主色调的函数。
2024-06-24 00:16:35 979
原创 JavaScript 前端枚举库 js-enumerate
前端枚举类Enum对象可在JavaScript中使用,用于枚举定义,前端组件单选、多选等的options选项的定义。
2024-04-25 22:54:56 1515 1
原创 Python枚举ChoiceEnum 应用于 parser.add_argument choices / Django choice / DRF ChoiceField
`ChoiceEnum`和Django的 models.Choices 的优势在于低版本Django也能使用,且普通Python项目脚本也能使用,也可以在`Python2`中使用;额外多出了`ChoiceEnum.extra`的用法,对不同枚举成员做映射配置相关场景可以使用;增加方法`ChoiceEnum.to_js_enum`返回数组数据,可以用于前端枚举库 js-enumerate初始化使用
2024-04-25 22:47:40 617
原创 Nginx缓存配置实现CDN加速
Nginx缓存可以作为作为CDN节点实现访问文件的加速,可以极大减轻后端服务的带宽和机器负载。本文介绍如何配置Nginx作为一个文件访问的缓存服务。设置缓存的路径和其他参数,缓存数据存储在文件中。缓存中的文件名是对MD5计算而来。
2024-07-28 22:32:32 866
原创 Python内存泄漏排查
本文介绍了几种常见的Python内存泄漏排查工具,不仅对工具进行简单说明,并增加了工具的常见使用方式和输出内容展示。工具包含有gc、tracemalloc、mem_top、guppy、objgraph、pympler、pyrasite。
2024-07-21 17:15:31 1552
原创 MacOS解决安装pycurl的问题 no such file or directory: ‘/usr/lib/libcurl.@libext@‘
Mac系统Python pip install pycurl报错,依赖的curl没有安装好。
2024-07-21 15:41:44 429
原创 前端web性能统计
针对不同服务带来的不同场景,可参考自身需求选择对应工具,这里推荐如下做法:使用web-vitals (js库)在前端采集真实用户监控,收集 LCP、INP、CLS;针对性的对关键页面,通过Lighthouse插件手动生成性能报告。
2024-07-14 12:08:09 861
原创 如何定义版本号--语义化版本
语义化版本2.0.0,版本格式:`主版本号.次版本号.修订号`,版本号递增规则如下:`主版本号`:当你做了不兼容的 API 修改;`次版本号`:当你做了向下兼容的功能性新增;`修订号`:当你做了向下兼容的问题修正。先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸。
2024-07-14 11:08:48 206
原创 代码质量管理
代码质量是程序员工作的核心。关注代码质量有以下几个重要原因:提升代码的可读性;提高可维护性;提高程序可持续性水平,减少错误与BUG;促进团队协作:当代码质量统一、规范一致时,团队成员之间的沟通和协作更加容易,减少了因代码风格不一致而引发的冲突和问题;优化性能。
2024-07-13 23:51:22 1068
原创 python-jenkins调用流水线设置“丢弃旧的构建”(discard old builds)
Jenkins任务执行,随之构建次数增多,构建日志所占磁盘大小不断增大,需要配置清除策略。而就是配置丢弃旧的构建;若是我们使用调用修改配置该如何设置?
2024-06-14 23:05:31 620 1
原创 图像处理方向信息
exif规范定义了方向标签,用于指示相机相对于所捕获场景的方向。相机可以使用该标签通过方向传感器自动指示方向,也可以让用户通过菜单开关手动指示方向,而无需实际转换图像数据本身。在图像处理过程中,若是原图文件包含了方向信息,会导致输出的图片在方向上有些许偏差。一般我们需要在处理图像之前将方向信息去掉,并将图像处理成正确的展示形式。
2024-06-10 00:02:46 939 2
原创 像素坐标系与图像坐标系
在数字图像处理中,经常会看到使用 `(x, y)` 表示图像中的某个像素点。在一些图像处理库,例如 `Pillow` 、`OpenCV` 、`Numpy` 中也会使用到坐标系处理图像的像素点。以左上角的点为原点(0, 0)横向为x轴;纵向为y轴;如图所示:其中原图为宽width,高height大小的图像,从(x, y)的位置截取宽w、高h大小的图像。
2024-06-09 19:47:27 384
原创 VSCode搭建开发环境--从PyCharm到拥抱vscode
最近自己的的License过期了,导致没有一个好的开发IDE,于是开始拥抱免费的啦。当然,不可否认的是PyCharm对于开发Python来说还是非常好用的,特别是版本。由于本人不仅写Python,也写一些前端代码,PyCharm或者WebStorm来写前端都导致电脑很卡,特别吃内存。于是趁此机会拥抱vscode,一方面因为免费,另外vscode有很多扩展(Extensions),能支持多语言的开发,非常方便。vscode官网下载vscode主要是安装扩展,然后就是各种配置项,以满足个人的自定义需求。
2024-06-07 23:07:33 1491
原创 Macos系统下vscode快捷键说明
vscode官网很详细的说明了快捷键的使用,本文这里记录一些非常常用的一些快捷键的使用,便于自己查找。也介绍了一些快捷键冲突的解决方式和自定义快捷键的说明。
2024-06-07 23:06:17 1086
原创 python使用MkDocs自动生成文档
python代码注释风格有很多,比较主流的有reStructuredText风格numpy风格Google风格。Pydocspython环境自带,支持MarkDown,但功能比较简单;Sphinx非常流行,默认支持reStructuredText风格注释,若要支持MarkDown需要扩展插件支持;MkDocs优势是能够很好的支持MarkDown格式来组织文档,支持Google风格注释;对于熟悉MarkDown语法的人来说,推荐使用MkDocs。
2024-06-01 16:33:50 726
原创 文件存储目录设计 & 文件资源地址URI的设计
文件为什么要做目录管理?文件资源地址又该如何设计定义?本文不讨论文件存储系统本身的设计, 仅是从单纯的文件存储需求而言来设计文件存储目录及文件名。本文介绍文件存储目录、文件名、文件地址URI如何设计。
2024-05-31 23:14:19 721
原创 Github Actions/workflow的使用
Github提供了免费的Actions执行workflows工作流,在CI/CD场景下可用于跑测试用例、构建、打包、部署/发版等操作。1个project可以配置多个workflow,每个workflow使用一个yaml文件配置;单个workflow可以配置多个jobs;单个job可以配置多个steps;step中定义要执行的环境和命令。
2024-05-27 23:30:28 1238
原创 判断视频moov的位置
MP4文件由若干称为Atom(或称为box)的数据对象组成,每个Atom的起首为四个字节的数据长度(Big Endian)和四个字节的类型标识,数据长度和类型标志都可以扩展。Atom可以嵌套,即其数据域可以由若干其它Atom组成,从而实现结构化的数据。MP4文件需要有ftyp、moov、mdat,它们都是顶级Atom,不能被其他Atom嵌套。若要在视频文件未能被完整下载前即开始播放,并能跳转到指定位置,肯定要首先获知其 moov atom 信息。
2024-05-25 17:44:08 603
原创 Django实现websocket
WebSocket长连接一般用于实现实时功能,例如web端的消息通知、会话等场景。使用 WebSocket 向 Django 项目添加实时功能,可以结合channels库实现。同时需要使用daphne,是为了后续部署用于启动ASGI1服务。
2024-05-22 23:46:20 1559
原创 如何生成Github Badge徽章图标
在开源项目的README中,经常会见到一些徽章(Badge)小图标,README中这些小图标,每个徽章都对应的一个URL。需要借助网站 shields 、 coveralls 、GitHub workflows工作流。
2024-05-21 23:36:03 1000
原创 如何选择Python测试框架:pytest和unittest
pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。unittest是Python标准库中自带的测试框架,它遵循了xUnit风格,即将测试组织成类和方法。在常规项目中,个人推荐使用pytest,毕竟pytest是一个简单易用且功能强大的测试框架。无论你选择哪个框架,测试的目的是保证代码质量和可维护性,测试框架只是手段之一。如果你想要一个稳定兼容且结构化清晰的测试框架,你可以选择unittest。
2024-05-05 17:59:45 588 1
原创 python 如何判断是函数还是方法 (function or method)
在 Python 中,方法和函数具有相似的用途,但在重要方面有所不同。 函数是可以从任何地方调用的独立代码块,而方法则与对象或类绑定,需要调用对象或类实例。
2024-05-02 21:36:07 430 2
原创 使用python setup.py报错:Upload failed (403) / Upload failed (400)
python打包上传工具出现以下错误,解决问题Upload failed (403): Username/Password authentication is no longer supportedUpload failed (400): Invalid value for blake2_256_digestTypeError: __init__() got an unexpected keyword argument 'method_whitelist'
2024-04-25 22:38:58 501 1
原创 iframe跨域问题 -- No ‘Access-Control-Allow-Origin‘ header is present on the requested resource
Chrome升级到115版本之后,Chrome 禁止修改,导致ifream修改domain的跨域方案无法正常使用。document.domain已禁止使用。
2024-04-24 11:15:04 1036
原创 构建NodeJS库--前端项目的打包发布
如何初始化配置,以及学习npm配置项;模块类型type配置、main入口文件的配置;webpack是一个用于现代 JavaScript 应用程序的 静态模块打包工具;JavaScript通常需要做语法转化和polyfills以便可以使用高级语法而不必担心浏览器兼容性问题,Babel的作用便在于此,而正好可以与webpack结合使用;eslint一个好的项目离不开代码格式规范;jest用于测试用例。
2024-04-23 23:50:12 2119 1
原创 使用Jest测试框架测试JS项目
JavaScript的测试框架有很多,这里主要记录一些自己在初次使用jest时遇到的一些问题。详细使用文档可以参照官方说明文档。Jest 是一款优雅、简洁的 JavaScript 测试框架。Jest 支持 Babel、TypeScript、Node、React、Angular、Vue 等诸多框架!Jest 是由 Facebook 开发的 JavaScript 测试框架。它是测试 React 的首选,并且得到了 React 社区的支持和开发。
2024-04-23 00:09:57 871 1
原创 macos pip install mysqlclient error: command ‘/usr/bin/clang‘ failed with exit code 1
解决macos pip install mysqlclient error 报错问题
2024-03-31 10:35:33 904
原创 MacOS M1/M2/M3芯片如何安装Python3.6
Mac电脑M芯片安装Python3.6报错。一般情况下,Mac系统可以使用homebrew来管理安装软件。brew search搜索发现,最低只能直接安装python@3.7版本。于是从Python官网下载安装包进行安装,确实也没有报错,安装完成后执行总是killed,不能正常使用。下载源码编译也不行。直接使用pyenv版本管理工具进行安装也是提示编译错误。
2024-03-30 00:14:18 2607
原创 iOS学习系列——获取位置信息
1.加载动态库定位和反查位置信息要加载两个动态库 CoreLocation.framework 和 MapKit.framework 一个获取坐标一个提供反查2. Info.plist文件添加两个数据NSLocationAlwaysUsageDescription和NSLocationWhenInUseUsageDescription3.代码(部分)Ap
2015-05-18 22:27:51 585
原创 nginx反向代理配置,负载均衡
1. 安装jdksudo rpm -ivh jdk-7u71-linux-x64.rpm设置环境变量:vim /etc/profile在底部加入:#set java environmentJAVA_HOME=/usr/java/jdk1.7.0_71CLASSPATH=.:$JAVA_HOME/lib/tools.jarPATH=$JAVA_HOME/bin
2015-01-01 09:04:44 657
原创 Linux NFS mount挂载
被mount的机器(服务机)10.10.10.2091 创建共享文件夹/data/attachment 2 修改/etc/exports,加入/data/attachments 10.10.10.207(rw,no_root_squash,sync,insecure) 3 重启相关服务(顺序按下面的进行)service rpcbind stopservice nfs
2015-01-01 08:55:58 877
原创 Sencha实现国际化,JS动态加载js、css文件
1. 新建文件messages_en.js和messages_zh_CN.js文件;2. 文件中定义js全局变量 var Messages = {};例:messages_zh_CN.js文件 Messages = {"title":“标题”};message_en.js文件 Messages = {"title":“title”};3. 在Sencha应用入口laun
2015-01-01 08:22:21 728
原创 JAVA调用https, JS跨域请求,客户端解决JS跨域问题, SOP
同源策略 (SOP) 可防止从一个来源加载的脚本获取或操纵来自另一来源的文档的属性或方法。术语来源 是域名、应用程序协议和运行脚本文档的端口的结合。可能存在关于 SOP 概念的一些误解;SOP 指只能从站点 A、不能从站点 B 获取信息。您需要知道在 SOP 限制下可以做什么,不可以做什么。
2014-11-12 09:25:19 4682
原创 Mac安装mosquitto 使用brew安装后没有mosquitto命令可以执行
Mac下安装mosquitto安装命令:brew install mosquittoxi
2014-10-15 12:09:22 3311
转载 ScrollView内嵌ViewPager导致ViewPager滑动困难问题
解决方式:重写ScrollView,然后在xml中定义布局的时候,使用自定义的PagerScrollView而不是系统的ScrollView即可。 重点在于重写父类的onInterceptTouchEvent方法
2014-08-08 20:08:07 648
redis Java客户端jar包 jedis
2015-05-18
Sencha 自定义List中的checkbox
2014-04-01
课程设计——电子购物网站
2014-03-13
数据库课程设计——仓库设备管理系统
2014-03-13
51单片机交通灯
2014-03-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人