当前位置 博文首页 > python实现剪贴板的操作

    python实现剪贴板的操作

    作者:ななみ けんと 时间:2021-08-04 18:20

            在回程的高铁上学习了这一节,由于对cmd命令行的相关知识所知甚少,只能自己一步步试验得出正确的方法,因此耗费了不少时间。这一篇博客也就当作是备忘吧。

    首先说一下想要实现的功能:

            通过输入一个命令行参数,实现将特定的一些文本复制到剪贴板的操作。(这个程序或许可以与其他的一些操作相结合,来实现自动回复,只是本人现阶段的能力还不足以实现这样的功能。)

    再来看一下具体的步骤和几个需要注意的事项:

    1.在python文件开头要加上‘#! python3',有关于#!的具体含义,详见文后链接。

    2.创建批处理文件(.bat)的说明:

    先创建一个文本文档(.txt),在其中写入如下内容:

    @py.exe (有空格!)将要创建的文件的绝对路径,如E:\Python\clipboard_copy (又有空格!)%*

    @pause

    在使用任何命令行时,千万千万要注意空格!由于命令行中的参数是以空格来划分的,任何非必要的空格都可能引起系统的误解因此在文件路径中绝对不要出现空格,可统一用下划线来替换(平时编程时一定要养成良好的文件命名习惯啊),还有就是最好也不要在文件名中出现中文,具体是不是因为编码的原因我还没有测试过,不过既然会带来麻烦,那就还是用英文吧(正好提升一下英语水平)。

    接下来将文本文件另存为.bat文件格式,详情见下图:

    在文本文档界面选择另存为(ctrl+shift+S),注意不仅要将文件后缀改成.bat,还要在保存类型中选择“所有文件”类型 ;

    保存好批处理文件之后,将其移动到C:\Windows目录下(或者是其他任何一个已经设置为环境变量的路径均可)。

    3.python文件中具体代码:

    #! python3
     
    #TEXT中是你想要复制到剪贴板上的内容和访问他们的关键字组成的字典
    TEXT = {'忙': "您好,您所拨打的用户正忙,如需对方回电,请留言:",
            'busy': "Sorry, I'm busy now.",
            '社会主义核心价值观': "富强民主文明和谐\n自由平等公正法治\n爱国敬业诚信友善"}
     
    import sys, pyperclip
    if len(sys.argv) < 2:             #此时argv中除了文件名之外没有传入其他参数
        print("Sorry, no input has been received yet…")
        sys.exit()
     
    keyphrase = sys.argv[1]
     
    if keyphrase in TEXT:
        pyperclip.copy(TEXT[keyphrase])
        print("The text " + TEXT[keyphrase] + " is copied to the clipboard")
    else:
        print("There is no such text")

    在剪贴的内容和所使用的关键字中是可以出现中文的 。

    4.使用方法:

    按下win+R,打开cmd命令窗口,直接在其中输入mclip(这个是我的文件名,实际情况由自己的文件名决定) (空格!)TEXT中指令,就会发现所需要的内容已经被复制到了剪贴板上。

    相关链接:

    #! 的作用原理

    jsjbwy
    下一篇:没有了