1. 前言
大家好,我是安果!
咱们都晓得 Python 能够用来开发桌面利用,一旦性能开发实现,最初打包的可执行文件体积大,并且应用 Python 开发桌面利用周期绝对较长
如果想疾速开发一款 PC 端的桌面利用,举荐应用 Aardio + Python 搭配的形式进行开发
2. Aardio 介绍
Aardio 是一款专一于 Windows 桌面端的软件开发,实用于疾速开发一些自用的 PC 端桌面工具,并且它反对与 Python、JS、Golang 等支流语言进行混合编程
它是一款收费的开发工具,简略易学,反对多线程,具备笨重、疾速开发的特色
PS:Aardio 仅实用于开发 Windows 桌面利用,不具备跨平台性
官网地址:https://www.aardio.com/
3. 疾速动手
首先,从官网下载软件后关上,点击左上角「 新建工程 」,抉择「 空白工程 」模板,输出项目名称,点击创立按钮,一个空白工程被创立实现了
PS:Aardio 软件内置了很多界面模板、程序模板,能够依据需要自行抉择
而后,从软件左下角的「 界面控件 」中抉择 2 个控件,一个动态文本 Label、一个按钮 Button,接着设置控件的地位、大小、属性
控件大小及区域:抉择控件后,在两头面板区域,用鼠标左键拖动来设置控件地位、控件大小
控件属性:选中某一个控件后,在软件右侧区域「 属性 」中设置控件的属性
双击按钮控件会从「 设计视图 」切换到「 代码视图 」,并在代码中生成按钮的点击监听事件
PS:也能够通过工具栏「 切换 」按钮或快捷键「 Ctrl +U 」切换两种视图
接着,在按钮点击事件中编写代码,应用窗体对象内置的办法 msgbox() 弹出一个提醒对话框
import win.ui; /*DSG{{*/ mainForm = win.form(text="aardio工程8";right=959;bottom=591) mainForm.add( button={cls="button";text="弹出 Hello World";left=320;top=120;right=568;bottom=184;z=2}; static={cls="static";text="Hello";left=80;top=120;right=240;bottom=168;notify=1;transparent=1;z=1} ) /*}}*/ //设置按钮的点击事件 mainForm.button.oncommand = function(id,event){ //弹出一个提示框 mainForm.msgbox("Hello World,Arrdio!") } mainForm.show(); return win.loopMessage();
最初,点击工具栏中的「 公布」按钮或快捷键 F7 生成可执行包
须要留神的是,如果弹出须要更新 Windows Defender 实时爱护排除目录,点击默认按钮即可
4. 联合 Python
尽管 Aardio 提供了丰盛的 API,很多性能能够取代 Python 来间接实现,然而熟练掌握 Python 的小伙伴对于 Aardio 语法可能不太能适应
假如咱们用 Python 写了一个简略的爬虫,应用 BeautifulSoup 爬取网页题目
from urllib.request import urlopen from urllib.error import HTTPError from bs4 import BeautifulSoup def getTitle(url): """爬虫获取网页题目""" try: html = urlopen(url) except HTTPError as e: return None try: bsObj = BeautifulSoup(html.read(), "html.parser") title = bsObj.head.title.string except AttributeError as e: return None return title
上面咱们在 Aardio 编写具体的业务逻辑
首先,在 Aardio 中增加 2 个文本框和一个触发按钮
接着,为按钮设置点击事件调用 Python 脚本
在 Aardio 中调用 Python 蕴含 4 个步骤
- 搁置 Python 脚本到我的项目资源文件目录下,即:res 文件夹下
- 导入 py3 模块,应用 string 中的 load() 函数加载脚本文件
- 应用 py3 中的 exec() 函数预执行脚本
- 最初,应用「 py3.main.函数名」的格局来调用具体的函数
import py3; ... //增加调用函数的门路,string指pycode为字符类型 pyCode = string.load("\res\callpy_pro.py"); //执行pycode py3.exec(pyCode); mainForm.btn.oncommand = function(id,event){ //调用函数,在main中调用函数getTitle() var result = py3.main.getTitle(content); mainForm.result.text = result; //提醒弹框 mainForm.msgbox(result); } mainForm.show(); return win.loopMessage();
如果间接运行程序会报错短少依赖的谬误,起因是 Python 脚本中援用了 BS4 的依赖
这时,咱们须要先执行公布操作生成可执行文件及 py3 的文件夹
留神:py3 文件夹在装置 py3 依赖的时候主动生成
最初,将 BS4 的依赖目录拷贝到「 /dist/lib/py3/.res/」 目录下
比方
# bs4 依赖目录 C:\Users\xingag\AppData\Local\Programs\Python\Python37\Lib\site-packages\bs4 # bs4搁置到的指标文件夹 C:\Users\xingag\Desktop\aardio\software\project\callpy\dist\lib\py3\.res\
运行我的项目,在输入框中输出一个网址,点击按钮,会将爬取的后果展现到后果输入框,并且弹出一个提示框
PS:因为我的项目波及到 Python 内部依赖,分享 EXE 可执行文件时,须要将 lib 文件夹一起压缩打包进来
5. 最初
本篇文章介绍了 Aardio 的根本用法及调用 Python 脚本的具体流程
实际上,Aardio 的性能十分弱小,它在文件操作、操作系统、音视频、数据库、网络应用、高级利用控件、自动化等都有对应的 API,大家能够自行拓展
如果你感觉文章还不错,请大家 点赞、分享、留言 下,因为这将是我继续输入更多优质文章的最强能源!