- 博客(188)
- 收藏
- 关注
原创 【cnocr】关于import cnocr之后cv2变慢的问题
cnocr导入后,即执行后,cv2的线程数由16被改为了1,导致cv2的函数运行速度变慢,这个是cnocr的一个大坑之一。
2025-03-12 09:15:08
171
原创 【pyinstaller】加密打包的调试思路
在python项目打包中,把源码通过easycython编译成pyd,然后再使用pyinstaller打包pyd项目,是常用的加密打包方案。
2024-10-23 15:20:38
301
原创 【pyqt+pyinstaller】tqdm报错AttributeError: ‘NoneType‘ object has no attribute ‘write‘
和sys.stderr没有被重定向初始化,而是被置为了None,而tqdm的file参数是指定输出打印的,默认是使用stderr,需要一个io.StringIO()实例,所以会报此错误。当pyqt使用pyinstaller打包后,软件只有自己的主界面,失去了命令行终端输出界面,此时sys.stdout。
2024-09-06 11:18:35
497
1
原创 【pyinstaller】打包软件中含multiprocess的多进程时遇到的问题
如果使用multiprocess在项目代码里面(没有单独放在main函数里)启动多进程,multiprocess在windows里的启动机制是spawn,会重新走一遍整个代码的main,此时如果是pyqt项目,就会再次实例化一个界面,这不是我们期盼的。如果使用pickle文件传参的话,里面的数据结构,例如类的实例等,涉及的module需要在load pickle的时候也导入,不然这些类的实例无法恢复。可以解决这个问题,但是尝试了,pyqt项目在启动多进程后直接闪退了,原因不清。
2024-09-06 10:58:49
305
原创 【python】使用easycython编译pyd后运行出现异常的可能原因
使用easycython编译python的时候,可能遇到编译不成功或编译后代码运行异常的情况:
2024-09-06 10:11:59
300
1
原创 【pyinstaller】关于打包优化压缩体积的几种方式
使用pyinstaller自带的命令行参数参考链接这个功能类似或者底层就是python解释器的编译优化的功能,默认是0,即不开启编译优化。注意以上的优化,是针对源码py到字节码pyc的编译阶段,如果项目已经由cython编译为pyd的机器码后,再开这个优化的话,效果微乎其微。
2024-07-05 16:21:27
960
原创 【NSIS】Internal compiler error #12345: error mmapping file (2096258061, 33554432) is out
这个版本的NSIS解除了2GB软件限制。原版NSIS有2G的限制,
2024-07-04 17:14:21
616
原创 【django+pyinstaller打包】Argument ‘verbose_name‘ has incorrect type (expected str, got __proxy__)
惰性翻译,在获取变量名称时不会立即获得str类型,而是一个代理,所以报这个错。在使用pyinstaller打包django工程中,
2024-07-04 15:52:48
431
原创 【django项目使用easycython编译】Cannot convert Unicode string to ‘str‘ implicitly.
需要编译的源码里面的函数写了type hint,尤其是return的type hint,当type hint是str时,但是变量确实f-string格式化后得到的,编译时会报错。
2024-07-04 15:48:51
358
原创 【Django项目pyinstaller打包】class models doesn‘t declare an explicit app_label
在使用pyinstall打包时,app里面的models.py调用时会报错,
2024-07-04 15:37:18
313
原创 torch和torchvision的版本不仅要匹配,cuda版本还有一致
在这里找cuda11.8版本编译下的torch和torchvision。
2024-03-07 11:21:10
532
原创 【django】admin后台管理的坑
自定义的主键,必须要在fields或者fieldsets里,但是默认添加的或者自主添加的autofield字段可以不在admin页面里添加,保存时会自动添加。
2023-09-16 14:37:33
205
原创 【django】Forbidden (CSRF cookie not set.)
表示django全局发送post请求均需要字符串验证防止跨站请求伪造的功能客户端访问服务器端,在服务器端正常返回给客户端数据的时候,而外返回给客户端一段字符串,等到客户端下次访问服务器端时,服务器端会到客户端查找先前返回的字符串,如果找到则继续,找不到就拒绝。客户端-》URL路由系统 - 》 CSRF -》视图函数我这里要写的是一个内部使用的api接口,也不大会有 跨站请求伪造所以这里提供两个不是很推荐,但是非常简单的方式解决这个问题既然不需要 CSRF 这里我们就把CSRF检测关掉即可。
2023-09-08 10:44:49
1189
原创 【Django】include app_name和namespace的区别
的url的name,防止不同app之间,url_name的重名,引用时加入。同一个view module的情况,让不同路由进入同一个view中,进行。知道从哪个路由前缀进来的。
2023-07-20 15:55:38
326
原创 【Python】__dict__和getattr()的区别
返回字典包含类属性、普通方法、静态方法、类方法等,可以获取类属性、普通方法、静态方法、类方法等,
2023-07-17 11:30:23
164
原创 【Pyside6 pyqtgraph】 PlotWidget 报错 __init__() takes 1 positional argument but 2 were given
解决办法升级pyqtgraph到0.13.3。
2023-06-08 17:55:46
209
原创 【python工程加密】easycython编译成pyd再pyinstaller打包遇到的坑
走一遍所有调用的module,并打包进去,但是编译好的pyd不会被识别import,这就是为什么要保留原来module的。可以将py编译成pyd文件,将编译好的pyd文件以原来的工程组织形式(在工程副本的每个文件夹下编译py文件,并重命名为原名。, 对于这些已经pyd的module,属于。)存放好,注意module下要有非编译的。pyinstaller的打包过程会从。4. pyinstaller打包加入。通过写脚本完成以下流程。
2023-05-20 15:14:43
1251
原创 【Python 源代码加密】pyinstaller的伪加密,以及easycython的 “future feature annotations is not defined“ 问题
出现该问题是因为安装easycython的时候自带安装cython版本为0.29.34,该版本不支持future feature,需要卸载掉,安装3.0版本的cython。pyinstaller的加密不行,只能另辟蹊径,把源代码编译成动态链接库的形式。cython的最新版本在此查看。
2023-05-13 10:38:47
2712
1
原创 【pyqt】QLineEdit的editingFinished信号在按下回车并弹窗后被触发两次的解决办法
解决这个奇葩问题,有一种解决方法是,分开两种信号来写,同时两种信号的槽函数都不要用@QtCore.pyqtSlot()修饰器修饰,在按下回车,触发一次,同时槽函数调用了弹出对话框,此时QLineEdit失去焦点,又会触发一次。QLineEdit的editingFinished信号发出条件是,按下回车或者失去焦点,但是在按下回车时,该信号被触发两次的原因是,
2023-03-21 16:00:32
1669
原创 python使用gitpython操作git远端显示git clone进度条
如果想从Progress类里获取变量到主窗口类中,可以把主窗口类作为参数带入Progress的初始化中,并在update中做赋值。Progress().update()函数是git.Repo.clone_from的回调函数。
2023-02-13 09:18:43
1015
原创 【Python】安装wmi 导入时报错 ImportError: DLL load failed while importing win32api: 找不到指定的模块
在python环境下的Scripts路径下找到pywin32_postinstall.py。完成后显示pywin32安装成功。
2022-12-02 09:49:22
380
原创 【pyinstaller】项目中opencv和pyqtgraph打包时遇到的问题
但是测试好像把pyqtgraph升级到0.13.1后打包不会出现这个问题。opencv降级到4.5.1.48。
2022-10-10 11:30:39
1420
原创 【Python】most likely due to a circular import 循环导入的解决方法
在import的一个moduleA时,会先导入这个moduleA里的所有import,以及moduleA所在的__init__.py里的其他module,导入完这些才算完成moduleA的导入。
2022-07-29 09:17:25
3166
原创 【Python3.8】ctypes加载dll: 报错 FileNotFoundError: Could not find module ‘xx.dll’ (or one of its
Python3.8 使用ctypes加载dll时报错自python3.8开始,考虑到dll劫持等安全性问题,python3.8更改了dll的搜索加载机制,即只在指定可行的位置搜索加载dll,不再自动读取系统的环境变量Path了。使用完整的绝对路径,如果还不行,那么加上参数方法2使用相对路径, 但是在加载时加上参数,指定winmode参数(该参数将指定底层调用WinAPI LoadLibraryEx时所使用的flags),将值指定为可以从本地路径加载,替换掉默认行为。方法3使用添加dll的搜索
2022-07-14 11:08:25
20065
18
原创 【Python】关于__name__和__file__以及os.path的用法
有两种情况当前文件的绝对路径返回xxx(文件或者文件夹)所在的文件夹的绝对路径,即可认为是返回其父级文件夹的绝对路径返回文件的名字(带后缀)返回绝对路径
2022-07-14 10:20:00
412
原创 【vscode的Python插件的坑】python3.6 按F5调试 没反应 一闪而过 【已解决】
最近(2022年7月11日)在使用vscode调试python时出现按F5无法进入调试的情况,经过一番查找,根本原因是vscode的python扩展插件的最新版本(2022.10.0)不再支持python3.6了 。。。。使用python3.7+,我们可以看到python官网对python版本的生命周期的标示如下回退vscode的python版本到2022.10.0之前,点击安装另一个版本,............
2022-07-12 10:04:37
7944
12
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人