自制Python小工具(1)——Gadgets 0.1


1. 前言

大家好啊,我是落枕!
最近一直比较忙哈,没有写文章,不好意思……
我今天就和大家分享一个我自己做的项目,名字就叫小工具,Gadgets,希望大家可以喜欢


2. Gadgets 0.1介绍

我的这个小工具在第0版中只有一个功能,就是把音乐从视频里提取出来的功能
开发环境:python3.7
开发工具:pycharm64.exe

2.1 使用过程概述

用户在点开这个文件(或者说是用命令打开了这个文件,后面会细讲),随后会最后向用户确认用户是否确定需要进行下一步(此处是为了防止误触),随后会提示用户输入视频所在的路径(在下一版本中会改进),最后生成mp3文件。(后续的更改文件名过程将会在下一版本中改进)


3. Gadgets 0.1功能实现

3.1 创建文件

这一部很简单,创建一个文件即可。
在这里插入图片描述
(此处为iPad备份存档截图)


3.2 功能编程

我们需要用到一个第三方库,pip安装即可

3.2.1 安装

我们要用的是moviepy库,使用pip安装
pip install moviepy
一直等到安装成功即可。
安装成功


3.2.2 导库

import moviepy.editor as mp

3.2.3 定义函数并实现功能

def extract_music(path):
    my_clip = mp.VideoFileClip(path)
    my_clip.audio.write_audiofile('{0}.mp3'.format(path))

最基本的功能就好了,但是在用户输入的路径有误的时候会引发OsError,我们可以使用try-except避免程序终止

import os
import time
def extract_music(path):
    try:
        my_clip = mp.VideoFileClip(videos_file_path)
        my_clip.audio.write_audiofile('{0}.mp3'.format(path))
        os.system("cls")
        print("-Completed-")
        print("-You Can Change The File Name By Yourself")
        print("-We Will Further Develop This Function-")
    except OSError:
        time.sleep(1)
        os.system("cls")
        print("-There's Something Wrong-")
        print("-Please Check Your Path And Try Again-")

3.3 主程序

主程序的命名就用我们整个小工具的名字,Gadgets 0.1
新建一个py文件:
主程序截图

3.3.1 向用户问好并提供指示

我们先定义一个函数,叫做main(),(当然,各位在if __name__ ==“__main__”:下进行程序编写也是可以的)
那么我们的问号环节就不和大家详细说了,随便写就可以,以下只是做一个参考,不喜勿喷。

import time

def main():
    print("-Welcome Using Gadgets 0.1!-")
    time.sleep(1)
    print("-One Service-")
    print("-1.Extract Music-")
    a = input("Be Ready To Enter The Program?\n(Y=Yes   Other Key=No):")#进行最后的确认,以防用户误触,如果觉得累赘的话,可以删去
    a = a.upper()
    if a == 'Y':
        . . .#此处需要刚刚我们完成的功能填入
    else:
        print("-Thanks For Using-")

if __name__ == "__main__":
    main()

3.3.2 填入功能

刚才的功能其实我们已经实现了,但是缺少人性化的体验,所以我们再一次打开刚刚的extract_music.py,进行功能的人性化设计。
我们定义一个函数,叫做course(),(即“过程”的意思),专门用来存储用户使用过程的设计。以下依旧是仅作参考,不喜勿喷。

def course():
    os.system('cls')
    path = input("-Please Give Me The Path Which The Movie Is In-\nEnter Here:)")
    print("-It May Take For Some Minutes-")
    print("-When The System is Extracting-")
    print("-Let's Have A Break-")
    extract_music(path)

那么我们整个extract_music.py就大功告成了,文末我会附上整个代码。
接下来进行填入

import time
from extract_music import course #这一句千万别漏掉了

def main():
    print("-Welcome Using Gadgets 0.1!-")
    time.sleep(1)
    print("-One Service-")
    print("-1.Extract Music-")
    a = input("Be Ready To Enter The Program?\n(Y=Yes   Other Key=No):")
    a = a.upper()
    if a == 'Y':
        course()
    else:
        print("-Thanks For Using-")

if __name__ == "__main__":
    main()

大部分的功能就好了,我们在做一点细节,比如说加载界面。


3.4 装饰

加载

ps:这一部分并非必要,不喜欢的可以删去,觉得简陋的可以自己改一改
我们再再再再创建一个文件,叫做loading.py
里面填上下面这一段代码,就可以实现加载进度条啦!

import os
import time

def load():
    print("-Please Wait-")
    time.sleep(1)
    print("-We Are Loading For You-")
    os.system("cls")
    print("-        |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("--       |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("---      |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("----     |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("-----    |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("------   |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("-------  |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("-------- |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("---------|")
    print("Loading Completed")
    time.sleep(1)
    os.system("cls")

对了,我们还得在主程序里加上这个函数才行。

from loading import load
from extract_music import course
import time


def main():
    load()
    time.sleep(1)
    print("-Welcome Using Gadgets 0.1!-")
    time.sleep(1)
    print("-One Service-")
    print("-1.Extract Music-")
    a = input("Be Ready To Enter The Program?\n(Y=Yes   Other Key=No):")
    a = a.upper()
    if a == 'Y':
        course()
    else:
        print("-Thanks For Using-")

if __name__ == "__main__":
    main()

大功告成!

4. 源码展示

4.1 extract_music.py

import moviepy.editor as mp
import time
import os


def extract_music(path):
    try:
        my_clip = mp.VideoFileClip(path)
        my_clip.audio.write_audiofile('{0}.mp3'.format(path))
        os.system("cls")
        print("-Completed-")
        print("-You Can Change The File Name By Yourself")
        print("-We Will Further Develop This Function-")
    except OSError:
        time.sleep(1)
        os.system("cls")
        print("-There's Something Wrong-")
        print("-Please Check Your Path And Try Again-")


def course():
    os.system('cls')
    path = input("-Please Give Me The Path Which The Movie Is In-\nEnter Here:")
    print("-It May Take For Some Minutes-")
    print("-When The System is Extracting-")
    print("-Let's Have A Break-")
    extract_music(path)

4.2 loading.py

import os
import time


def load():
    print("-Please Wait-")
    time.sleep(1)
    print("-We Are Loading For You-")
    os.system("cls")
    print("-        |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("--       |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("---      |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("----     |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("-----    |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("------   |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("-------  |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("-------- |")
    print("Loading Now")
    time.sleep(1)
    os.system("cls")
    print("---------|")
    print("Loading Completed")
    time.sleep(1)
    os.system("cls")

4.3 Gadgets0.1.py

from loading import load
from extract_music import course
import time


def main():
    load()
    time.sleep(1)
    print("-Welcome Using Gadgets 0.1!-")
    time.sleep(1)
    print("-One Service-")
    print("-1.Extract Music-")
    a = input("Be Ready To Enter The Program?\n(Y=Yes   Other Key=No):")
    a = a.upper()
    if a == 'Y':
        course()
    else:
        print("-Thanks For Using-")

if __name__ == "__main__":
    main()

邮箱:fkdlzz@163.com
创作不易,不喜勿喷,欢迎指教

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
### 回答1: Industrial Gadgets ActiveX Pro是一个应用于工业制造领域的软件程序。它是一个ActiveX控件,可嵌入到其他的软件或系统中使用。 该软件主要提供了一些列实用的工业操作功能,例如数据采集、控制系统、传感器操作、数据处理等等。这些功能的实现完全基于最新的工业自动化技术,能够快速、高效地完成各种生产过程和操作流程。 该软件还拥有一个友好易用的用户界面,帮助工业制造行业的用户轻松地操作和管理生产工厂、设备和工具。此外,该软件还提供了一系列易用的工业报表功能,帮助用户汇总和分析生产数据,以改进和优化生产流程。 综上所述,Industrial Gadgets ActiveX Pro是一款非常优秀的工业自动化软件,为工业制造领域提供了高效、实用的自动化控制和数据处理方案。它的特点在于其稳定的性能和兼容性,可以广泛应用于各种工业制造领域。 ### 回答2: Industrial Gadgets ActiveX Pro是一种工业控制组件,可以用于创建高效、可靠的控制系统,并提供多种插件和工具来实现灵活的数据监测、设备控制、数据采集、通讯结构等。此组件可以通过工业增强版的ActiveX控件接口,实现设备间的数据交互,支持多种编程语言和插件,可用于工业自动化、智能家居、物联网等领域。此外,该组件还提供了丰富的数据报表,支持实时、历史数据查询、统计分析,方便工程师进行数据处理和工程设计。总之,Industrial Gadgets ActiveX Pro具备强大的功能和灵活的扩展性,可为工业控制系统和智能化设备提供全方位的支持。同时,该组件还提供了易用的开发工具和平台,帮助用户快速开发应用程序和项目,提高工程效率,降低开发成本,是现代控制系统中不可缺少的一部分。 ### 回答3: Industrial Gadgets ActiveX Pro是一种用于开发和设计工业控制系统的软件工具。它可以通过使用ActiveX控件来实现用户界面与工业设备之间的通信,该工具可以帮助开发人员加速开发过程,减少开发成本。此外,它还提供了用于调试和单元测试的工具,以确保所开发的系统能够正常运行并满足工业要求。 与传统的控制器编程相比,Industrial Gadgets ActiveX Pro提供了更快的响应时间和更高的精度。开发人员可以使用它来实现各种功能,如数据采集、监控和调节控制等模块。此外,它还可以与其他软件和硬件组件进行无缝集成,以满足各种工业自动化应用程序的要求。 总之,Industrial Gadgets ActiveX Pro是一款功能强大且易于使用的软件工具,可帮助开发人员迅速构建高效、可靠、易于维护和管理的工业控制系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fkdlz-疯狂的落枕ὢ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值