zoukankan      html  css  js  c++  java
  • 《自拍教程17》Python调用命令

    他山之石

    何为他山之石,就是借助外界工具,来实现自己想要的功能。
    命令行界面软件, 即各种命令,我们也叫命令行工具,
    此类工具也是测试人员或者开发人员常用的工具的一种。
    测试人员可以借助这类工具,快速实现数据处理,
    比如Linux自带的wget命令(Windows这边需要自己去下载放到环境变量),
    就可以实现下载文件的功能。

    调用命令VS编写代码

    初学编程的测试人员,编写代码,可能还会有些许难度。
    比如通过requests模块, 下载一个文件的命令如下:

    import requests 
    
    url = "http://www.zipython.com/images/download_file/angel.mp3"
    r = requests.get(url) 
    with open("angel.mp3", "wb") as hf:
    	hf.write(r.content)
    

    但是用wget这类命令,只需要以下2行代码。

    import os
    os.system("wget http://www.zipython.com/images/download_file/angel.mp3")
    

    对于初学者,尤其是用习惯了命令的人,
    其实可以很快的通过os.system() 就可以调用很多很多的命令行工具软件,
    进行数据处理, 所以我很建议, Python自动化测试的初学者
    先别学着写代码,先学命令行的各类命令,
    然后尝试用os.system()函数;
    或者os.popen()函数;
    或者subprocess.Popen()函数,
    来调用命令,快速实现自己想要的功能。

    调用命令行的3种方式:

    以下3种方式,难度逐步提高,可以在实际工作中尝试使用。

    推荐进阶 函数 优点 适用场景
    第一阶段 os.system() 简单地顺序执行,
    阻塞式地必须等上一条执行完,才能执行下一条。
    非常适合不需要返回内容的批处理。
    适用于简单的Python批处脚本
    第二阶段 os.popen() 可以获取具体被执行命令运行后的返回输出字符串。
    output = os.popen("具体命令").read()
    适用于需要获取输出结果的
    Python批处理脚本
    第三阶段 Subprocess.Popen() 相对较复杂,
    但是是Python最推荐的执行具体命令的模块。
    其可以与被执行命令进行输入输出交互,
    可以获取被执行命令运行后的输出字符串,
    可以有很多设置项,比如timeout, shell模式等等。
    复杂项目,非常推荐此方式进行调用其他命令。
    适用于复杂的Python项目,
    非常推荐此方式进行调用其他命令。

    更多更好的原创文章,请访问官方网站:www.zipython.com
    原文链接:https://www.zipython.com/#/detail?id=c6446953038644298762799638a1c3b7
    也可关注“武散人”微信订阅号,随时接受文章推送。

  • 相关阅读:
    Hibernate5.2之一对一主键关联(四)
    Hibernate5.2关联关系之双向一对多(三)
    Hibernate5.2关联关系之单向多对一(二)
    Hibernate5.2关联关系之单向一对多(一)
    Hibernate5.2之原生SQL查询
    Hibernate5.2之HQL查询
    Winform 按键组合键
    当Bitmap的宽度大于ImageView的最大显示宽度时对ImageView的宽高重新计算来适应Bitmap的宽高(转)
    sqlserver 函數執行動態sql語句,取值
    时间格式化 字符串转时间(转)
  • 原文地址:https://www.cnblogs.com/zipython/p/12350625.html
Copyright © 2011-2022 走看看