用python爬虫,pyinstaller写一个属于自己的彩虹屁生成器!
时间:2022-07-26
本文章向大家介绍用python爬虫,pyinstaller写一个属于自己的彩虹屁生成器!,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
效果图如下:
实现方法
用Python爬虫对现有的api进行请求,获取彩虹屁,然后用tkinter模块形成一个可视化的gui,最后用pyinstaller对该py文件打包,这就是最后的彩虹屁生成器。
编写代码
1、首先对api发起请求,获取彩虹屁
def caihongpi():
url = 'https://chp.shadiao.app/api.php'
headers = {
'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36'
}
response = requests.get(url,headers=headers)
res = response.text
2、用tkinter调用该方法
root = Tk()
root.title('彩虹屁生成器')
text = Listbox(root,font=('微软雅黑',15),width=60,height=20)
text.grid(row=2,columnspan=2)
button = Button(root,text='生成彩虹屁',font=('微软雅黑',15),command=caihongpi).grid(row=3,columnspan=2)
mainloop()
为需要将获取到的彩虹屁显示在列表框中,因此要追加下面的代码
text.insert(END,res)
text.see(END)
text.update()
这样就能运行我们的彩虹屁生成器了,但是只有在Python环境下才可以使用这个程序,怎样能让没有接触过Python的人也能使用这个程序呢?这就要用到pyinstaller对该程序进行打包了
3、对py文件进行打包
PyInstaller是一个第三方库,它能够在Windows、Linux、 Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包, Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个 独立文件方便传递和管理。
安装:pip/pip3 install pyinstaller
安装完成之后我们就可以进行打包了,命令为:pyinstaller -F xxx.py
打包完成后会在该路径下,生成如下几个文件:
其中,打包好的程序就在dist文件夹中,这样即使没有python环境的朋友们,也可以直接点开使用了,是不是很方便。
如果需要给打包完成的程序添加自己喜欢的图标,我们可以通过这个命令来完成:pyinstaller -i xxx.ico
备注:具体不清楚如何打包的小伙伴,可以翻看之前发的文章,手把手教你打包成exe
- 通过Mono 在 Heroku 上运行 .NET 应用
- 百度地图聚合
- LVS DR模式 RealServer 为 Windows 2008 R2配置
- android画图之贝塞尔曲线讲解
- 地图开发添加标注物
- lambda表达式-编译测试
- MongoDB 聚合管道(Aggregation Pipeline)
- 高仿今日头条
- Web打印组件jatoolsPrinter
- Android-Universal-Image-Loader图片异步加载并缓存
- RESTful API 设计最佳实践
- Hello Bonjour!
- SQL Server 2008 FILESTREAM特性管理文件
- 验证码类库CaptchaMvc
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【原创】Spring Boot终极篇《下》
- 面试官:JDK、JRE、JVM 三者什么关系?
- 面试官:什么是面向对象?
- 详解SpringCloud中RabbitMQ消息队列原理及配置,一篇就够!
- 面试官:什么是字节码?它最大的优势是什么?
- 数组转List,一定要小心这个坑!
- 【小白学PyTorch】5.torchvision预训练模型与数据集全览
- 实战 | Python爬取B站柯南弹幕+Gephi梳理主线剧情
- Docker 部署SpringBoot项目不香吗?
- 面试官写了个双冒号::问我这是什么语法?Java中有这玩意?
- 精解四大集合框架:List核心知识总结
- 【深度学习】Keras vs PyTorch vs Caffe:CNN实现对比
- 【深度学习】迁移学习理论与实践
- 使用OpenCV+Tensorflow跟踪排球的轨迹
- 基于OpenCV的手掌检测和手指计数