当前位置: 首页 > news >正文

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 oswhile True:os.system('start cmd')

三,准备美图

首先我们需要准备一张或多张美图(可以在任何地方找到)。后面我们会发现这些图片绝大多数为".jpg"或".png"格式,这并不是我们所想要的(当然,如果你找到了".ico"或".icon"格式的图片,那么就可以直接用了),因此我们接下来需要做的就是将".jpg"或".png"格式的图片转换为".ico"或".icon"格式的图片。(这里我先介绍一种最简单,最实用,同时也是我亲测有效的方法)

我们准备好了图片,接着我们查看一下图片的格式。发现其为".jpg"格式(IMG_20241021_121741.png),因此我们需要将其转换为".ico"或".icon"的格式。

 

 

四,将美图转换为所需的".ico"或".icon"格式

我们先点击电脑左下方"开始"。

接着在上方的搜索框中输入"画图"。

这时候我们会发现搜索框下方会出现多个搜索结果,我们找到颜料盘一样外观的应用"画图",点击打开。

接着我们在进入"画图"后,点击"文件"->"打开"(如下所示)

305c3a4c99f64a419c663dc8c58102dc.png

找到我们之前美图文件的存放位置,选中图片->"打开"。

接着我们就可以按照我们的审美标准对图片进行包括裁剪,擦除,修边等操作了(这个内容太多,我就不再展开了,请大家自行操作)。

编辑好图片后,我们点击"文件"->"另存为"->"其它格式"。

然后我们在文件名之后添加".ico",接着点击保存(不用管下方的"保存类型")。

然后我们返回之前美图文件的存放位置,发现多了一个新图片。

我们点击查看新多出来的图片的格式,发现其为"ico"格式(图片类型:ICO),这就说明我们的图片格式转换成功了。

 

五,将初始文件编译为exe文件并更换图标

Pyinstaller库的准备工作就不再作过多讲解了,新手小白可以看我的前两篇文章,里面有详细步骤。

我们将转换为".ico"格式的图片复制后放到Pycharm中Python项目1(pythonProject1)下(如下所示)。

547bcfce95814baea10f9cced0030dca.png

接着打开Pycharm终端,输入"pyinstaller -F -w -i xxx.ico xxx.py"(我的xxx.ico为IMG_20241021_121741.ico,xxx.py为cmd.py)。(如下所示)(注意:是"-F -w -i")

11cec700a44b4a7db7587696bc7f062b.png

回车等待一段时间,当看到命令执行结果为"......completed successfully"时,代表程序已经打包为exe文件,且文件图标已换为".ico"格式的样式。(如下所示)

f5d5984dfb68434f8f1ce1e97c8878b1.png

我们返回Pycharm主界面,发现pythonProject1下面多了一个文件夹dist,我们点开,发现里面有一个exe文件。(如下所示)

7aa7551c40cc44719a8e68b09067d192.png

接着我们将该exe文件复制后放到系统文件下,发现文件的图标已经变为我们转换格式得到的"IMG_20241021_121741.ico"图片了。(如下所示)

2c54a04cdb5241639d55bc7c9f4c1041.png

我们接着将其重命名为"xx视频"之类的。(如下所示)

8ff699e044b74ab58979c68774616537.png

我们尝试一下将这个文件转发给其他人,看看效果如何。(如下所示)

e513dcaf90444ddf996bcfb7fd2f746d.jpeg

OK,效果非常好,非常具有迷惑性,哈哈哈!!!

我们来看一下运行效果,嘿嘿嘿

(如下所示)

554aeaa07d784f198b0432d7408e8955.jpeg

运行之后电脑风扇直接起飞,CPU负载过大,系统卡顿严重......

将这个文件发给你们宿舍里常常喜欢一个人偷偷观看"学习资料"的室友,绝对会让Ta破大防,同时也能让Ta以后警惕隐藏在其中的恶意程序,加强个人信息及财产的防护。

(解决办法:关机或打开任务管理器终止程序)

后面我会对本篇文章中的相关内容进行拓展讲解

感谢你的交流指教,我是闪云-微星,我们下期不见不散!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://www.lryc.cn/news/480657.html

相关文章:

  • 后台管理系统窗体程序:文章管理 > 文章列表
  • 图神经网络(GNN)入门笔记(2)——从谱域理解图卷积,ChebNet和GCN实现
  • 接口类和抽象类在设计模式中的一些应用
  • 【系统架构】如何演变系统架构:从单体到微服务
  • Neo4j入门:详解Cypher查询语言中的MATCH语句
  • CPP贪心算法示例
  • GPT对NLP的冲击
  • 中值定理类证明题中对‘牛顿插值法’的应用
  • HTMLCSS:3D 旋转卡片的炫酷动画
  • Node.js 全栈开发进阶篇
  • SQL语句-MySQL
  • Tencent Hunyuan3D
  • [ABC239E] Subtree K-th Max
  • Axure设计之左右滚动组件教程(动态面板)
  • 善用Git LFS来降低模型文件对磁盘的占用
  • Oracle RAC的thread
  • 如何创建备份设备以简化 SQL Server 备份过程?
  • DeBiFormer实战:使用DeBiFormer实现图像分类任务(一)
  • 【go从零单排】迭代器(Iterators)
  • Java与HTML:构建静态网页
  • 软件测试:测试用例详解
  • FreeSWITCH Ubuntu 18.04 源码编译
  • spring—boot(整合redis)
  • Python 包镜像源
  • Sigrity SPEED2000 Power Ground Noise Simulation模式如何进行电源阻抗仿真分析操作指导(一)-无电容
  • Unity3D ASTC贴图压缩格式详解
  • Docker的轻量级可视化工具Portainer
  • udp丢包问题
  • 儿童安全座椅行业全面深入分析
  • 【笔记】扩散模型(九):Imagen 理论与实现