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

linux网站备份网络运营培训班多少钱

linux网站备份,网络运营培训班多少钱,南京网站建设要多少钱,对软件开发的理解和认识写在前面 ​ 在很早之前,我在我所在的项目上自己写过一部分工具,web版本,放在本地环境供自己使用。由于之前项目的架构相对陈旧,多是一些文本处理的工具(sql处理),以及数据库查询相关工具类。由…

写在前面

​ 在很早之前,我在我所在的项目上自己写过一部分工具,web版本,放在本地环境供自己使用。由于之前项目的架构相对陈旧,多是一些文本处理的工具(sql处理),以及数据库查询相关工具类。由于没有进行版本管理,后来换电脑的过程中那部分代码被直接遗失掉了。

​ 再后来重写过一次,但一直使用控制台交互,自己虽然能用,但感觉体验一般。因此最近java转python实现一次,并使用py2app包进行打包,制作成自己的MacApp,想用的时候直接打开使用即可。

​ 但是值得注意的是,py2app打包的软件和通过xcode进行签名通过AppStore分发的软件不同,一般来说是过不了mac的安全检验的,简言之,自己用可以,分发存在困难(给予软件信任也可)。

​ 如果本身存在分发需求,又是一些简单的小工具,我倒是直接推荐使用Mac的自动工具,通过shell脚本实现功能,Mac会自动打成一个小程序,可分发。

在这里插入图片描述

我这里需要制作图形化界面,所以还是用回py2app。(不是swiftui没法比,是python更有性价比)

核心实现代码

​ 我这里主要实现了四个功能,sql转java拼接字符串sql,Java的sql字符串转sql,快速打开脚本文档,快速打开在线笔记。


from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QPlainTextEdit, QPushButton, QVBoxLayout, QHBoxLayout
from PyQt5.QtGui import QTextCursor, QDesktopServices
from PyQt5.QtCore import Qt, QUrlclass Sql2StringConverter(QMainWindow):def __init__(self):super(Sql2StringConverter, self).__init__()self.setWindowTitle('SQL字符串转换工具')self.setGeometry(200, 200, 1200, 700)self.sql_text = QPlainTextEdit()self.sql_text.setPlaceholderText("待转换区域")self.sql_text.setStyleSheet('background-color: white; color: black')self.result_text = QPlainTextEdit()self.result_text.setReadOnly(True)self.result_text.setPlaceholderText("已转换区域")self.result_text.setStyleSheet('background-color: white; color: black')self.input_output_layout = QHBoxLayout()self.input_output_layout.addWidget(self.sql_text)self.input_output_layout.addWidget(self.result_text)self.convert_button = QPushButton(" SQL to String")self.convert_button.clicked.connect(self.convert_sql_to_string)self.reverse_button = QPushButton(" String to SQL")self.reverse_button.clicked.connect(self.convert_string_to_sql)self.load_file_button = QPushButton('祖传秘籍')self.load_file_button.clicked.connect(self.load_file)self.online_button = QPushButton('在线笔记')self.online_button.clicked.connect(self.open_online_note)button_layout = QHBoxLayout()button_layout.addWidget(self.convert_button)button_layout.addWidget(self.reverse_button)button_layout.addWidget(self.load_file_button)button_layout.addWidget(self.online_button)self.central_widget = QWidget()self.setCentralWidget(self.central_widget)layout = QVBoxLayout()# layout.addWidget(self.convert_button)# layout.addWidget(self.reverse_button)# layout.addWidget(self.sql_text)# layout.addWidget(self.result_text)layout.addLayout(button_layout)layout.addLayout(self.input_output_layout)self.central_widget.setLayout(layout)def convert_sql_to_string(self):sql = self.sql_text.toPlainText()lines = sql.split("\n")converted_code = "StringBuffer sb = new StringBuffer();\n\n"for line in lines:if line.strip() != "":converted_code += 'sb.append(" {} ");\n'.format(line.strip())self.result_text.clear()self.result_text.insertPlainText(converted_code)# 将光标移至文本末尾cursor = self.result_text.textCursor()cursor.movePosition(QTextCursor.End)self.result_text.setTextCursor(cursor)def convert_string_to_sql(self):string = self.sql_text.toPlainText()# 去掉所有的 "sql.append(" 和 " ); "sql = string.replace('sb.append("', '').replace('StringBuffer sb = new StringBuffer();', '').replace('");', '').strip()self.result_text.clear()self.result_text.insertPlainText(sql)cursor = self.result_text.textCursor()cursor.movePosition(QTextCursor.End)self.result_text.setTextCursor(cursor)def load_file(self):folder_path = 'doc'url = QUrl.fromLocalFile(folder_path)QDesktopServices.openUrl(url)def open_online_note(self):url = QUrl('http://101.42.xx.xx:8088/#root-lYZQ')QDesktopServices.openUrl(url)if __name__ == "__main__":app = QApplication([])# 设置样式表app.setStyleSheet('''QMainWindow {background-color: black;}QTextEdit {border: 1px solid gray;padding: 5px;}QPushButton {background-color: #5fa8d3;border-radius: 5px;padding: 5px;color: white;}''')window = Sql2StringConverter()window.show()app.exec_()

在线笔记地址被我隐掉了,是我在我自己服务器搭建的trilium,有兴趣的放自己的印象笔记,墨迹文档之类皆可。

py2app打包设置

"""
This is a setup.py script generated by py2appletUsage:python setup.py py2app
"""from setuptools import setupAPP = ['transStr.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': True,'iconfile': './PythonApplet.icns','plist': {'CFBundleName': 'transStr','CFBundleDisplayName': 'transStr','CFBundleVersion': '1.0.0','CFBundleIdentifier': 'transStr'}
}setup(app=['transStr.py'],name='transStr',data_files=[],options={'py2app': OPTIONS},setup_requires=['py2app'],
)

iconfile:软件图标。是我自己搁网上下载的。

配置文件初始化命令

py2applet   --make-setup  xxx.py 

打包命令

python setup.py py2apppython setup.py py2app -A(不包含lib库)

我是全部打包的,因此打出来的软件较大。

在这里插入图片描述

在dist中可以看见自己打包好的软件

在这里插入图片描述
双击运行
在这里插入图片描述

功能测试

随便输入一条sql

在这里插入图片描述

随便输入一串sql字符串

在这里插入图片描述

点祖传秘籍,快速定位到提前放置的字段文档或者操作文档

在这里插入图片描述

点在线笔记,快速定位到我的在线笔记

在这里插入图片描述

写在后面

​ 这个app,原本我的打算只有字符串处理这个功能,但就这样写一篇文章,有点单薄,因此又加了两个功能。在学习打包MacApp的过程中,最令我意外的还是mac的自动操作功能,实话实说,确实很方便,但坏处就是没有图形化界面,不过对于稍懂计算机的人来说够使了。

http://www.ds6.com.cn/news/28355.html

相关文章:

  • 做网站用win还是li360排名优化工具
  • 跟建设通一样的网站wp博客seo插件
  • 做网站需要跟客户了解什么软件免费python在线网站
  • 网站建设案例分享微信加精准客源软件
  • 顺飞网站建设怎么样北京seo培训机构
  • 广州11个区繁华排名济南seo网站排名关键词优化
  • 教学资源网站建设设计宁波网站seo哪家好
  • 祥云县外卖哪个网站厦门人才网官网招聘
  • 找做金融的网站seminar什么意思中文
  • 网站系统安全保护等级是必须做的网络销售挣钱吗
  • 国外做展台搭建的设计网站泉州seo代理商
  • 建网站域名后怎样做手机百度ai入口
  • 跨境电商网站系统开发人工智能培训机构
  • 广州新冠最新情况app搜索优化
  • 绿化效果图怎么制作seo顾问是干什么
  • 邢台做网站服务商最新域名查询
  • 网站建设在哪个软件下做杭州seo技术
  • 不同网站建设报价单韩国热搜榜
  • 兰州迅豹网络怎么样网站用户体验优化
  • 可以做puzzle的网站大连网站建设
  • ps如何做音乐网站百度查重软件
  • 做直播信号网站搜索词排行榜
  • 什么网站做简历最好百度指数是啥
  • 网站建设公司自贡竞价如何屏蔽恶意点击
  • 电子商务网站建设的规章制度手机app安装下载
  • 开放一个网站多少钱店铺运营
  • 天津黄页企业名录引擎优化seo
  • 帮人做图挣外快的网站上海推广系统
  • 云主机建站营销策略有哪些方面
  • 贵阳58同城做网站公司有哪些网站排名靠前方法