• python 系统剪切板操作库 pyperclip VS win32clipboard


    今天打包了一个程序,使用到了剪切板操作

    打包下了要24M,去掉这个剪切版功能变成了11M,想来真是匪夷所思,接着就做了一个实验,看看两个库到底有啥区别

    操作系统:win7-64 python2.7.15  打包软件pyinstaller

    首先是pyperclip库,代码如下

    #!/usr/bin/env python
    # coding:utf-8
    
    import pyperclip
    
    pyperclip.copy("你好")
    

    打包完成16.7M(里面有鬼了)

    接下来是win32clipboard库

    #!/usr/bin/env python
    # coding:utf-8
    
    import win32clipboard as wc
    import win32con
    aString = u"你好"
    wc.OpenClipboard()
    wc.EmptyClipboard()
    wc.SetClipboardData(win32con.CF_TEXT, aString.encode(encoding='gbk'))
    wc.CloseClipboard()
    

    打包下来是3.14M(这才正常)

    接下来打包参数不加 -F,打包成文件夹,看看都是些啥

    首先是pyperclip

    按照大写排序,前面几个都是qt5的dll,看来是加载了qt5库,怪不得这么大,如果本身界面程序就是用qt5写的,那没啥影响

    不过我这种用tk写gui的人,就是多余的了

     

    下面是win32clipboard

    最大也就是python的dll,依赖库都不大

    接下去就是用win32clipboard库写了下剪切板操作相关的函数,重新打包脚本,体积减小了12M

    打包速度和加载速度都上去了,爽

  • 相关阅读:
    cf1131f 构造+并查集
    多源最短路小结
    bzoj2200拓扑排序+最短路+联通块
    cf478d 线性dp好题
    cf919D 线性dp+拓扑排序
    hiho1460 rmq模板题
    最小标示法模板 poj1509
    JAVA动态代理机制分析guide
    java动态代理(JDK和cglib)
    AOP面向切面编程
  • 原文地址:https://www.cnblogs.com/darkspr/p/10420244.html
Copyright © 2020-2023  润新知