像wget能够下载文件
ffmpeg能够切割、合并、转换、录制视频
free命令能够查看linux内存使用信息
python
python提供了库来调用外部程序、命令?》
最多见的两种方法:
①os.system os库里面的system参数
②subprocess subprocess库 里面的对和函数linux
如: shell
import os
os.system('notepad')
print('记事本已关闭')
注意:调用外部程序没有退出时,python程序会一直停在那里windows
对于有参数的命令,os.system()参数 直接把参数放在字符串中一块儿传入便可数组
向记事本传递参数,打开python.txt文件?》ide
如:
import os
os.sys('notepad c:\python.txt')函数
=====================================================工具
python实现录屏功能?》编码
import oscode
# 输出视频文件
import time
outputfile = 'C:\shipin' + time.strftime('%Y%m%d_%H%M%S', time.localtime()) + '.mp4'
# 工具目录
ffmpeg = r'C:\FFmpeg\安装包\ffmpeg-4.1-win64-static\bin\ffmpeg.exe'
settings = [
'-y -rtbufsize 100M -f gdigrab -framerate 10', # 帧率等
'-offset_x 1000 -offset_y 0 -video_size 640x480', # 录制指定屏幕区域
'-draw_mouse 1 -i desktop -c:v libx264', # 视频编码格式
'-r 20 -preset medium -tune zerolatency -crf 35', # 视频压缩参数
'-pix_fmt yuv420p -fs 100M -movflags +faststart "%s"' % outputfile # 大小限制 等
]
# 将参数组合起来
recordingCmdLine = ' '.join([ffmpeg]+settings)
# 查看命令内容
print(recordingCmdLine)
# 执行命令录制视频
os.system(recordingCmdLine)
======================================================================================
# 返回值
# 无论windows仍是linux,若是一个程序它的退出码为0就是表示成功的话
# 若是咱们只须要判断调用是否成功,也就是是否为0
import os
import subprocess
# ret = os.system('ls')
# if ret == 0:
# print(ret)
# os.system提供了简单的调用其余程序的功能
# 而python里面有另外一个模块subprocess,提供了更为强大的功能
# 使用subprocess最多见的目的就是检查应用的输出
# 由于os.system只能得到返回码,输出到屏幕的内容并不能获取
# 若是想获取被调用的命令或工具输出到终端的信息,并进行处理,可使用subprocess库里面的check_output函数
# 这个方法须要等到被动月供程序退出,才能返回
# shell=True 表示使用终端shell执行程序;参数encoding:指定哪一种解码方式,
# 不填,是缺省值None,须要咱们本身去解码
# ret = subprocess.check_output('dir', shell=True, encoding='gbk')
# print(ret)
# print(ret.decode('gbk'))# 若是咱们须要被调用程序还没退出时,就获取其输出的信息;# 或者在被调用程序运行的过程当中,输入一些信息给被调用程序
# 须要使用subprocess库里面的Popen类
# Popen能够非阻塞式调用外部程序,也就是说,无需等待被调用程序结束。脚本的代码能够继续往下执行
from subprocess import PIPE,Popen
# popen = Popen(args='notepad c:\python.txt', shell=True)
# print('done')
# Popen一样能够获取外部程序的输出# stdout=PIPE 表示将被调用的程序的标准输出信息获取到管道文件中# 要获取程序的输出信息,就要这样指定。popen = Popen('dir c:', stdout=PIPE, shell=True, encoding='gbk')output, err = popen.communicate()print(output)print('----------------------------------------------')print(err)