zoukankan      html  css  js  c++  java
  • Python脚本带-的参数脚本

    一、故事背景

    由于先前的工作内容是做后台开发,对于脚本写的很少;
    昨天参加面试遇到一道面试题,写一个python脚本;
    通过脚本的后面的参数选项获取参数选项后面的字符串进行处理;
    问题没记错的话大概是这样的:
    python manage.py -u http://www.baidu.com -d 'name=zhangsan,email=zhangsan@live.com' -o filePATH
    
    
    # -u -d -o  表示url地址、查询资源、请求获取的数据保存的到filePATH文件中

    二、加-的参数脚本

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    # Author:supery
    
    import sys
    import getopt
    
    def usage():
        print(
    """
    usage: python [{0}] ... [-u url | -d mod | -o file]  ...
    参数说明:
    -u     : 请求目标地址
    -d     : 请求的参数数据
    -o     : 数据保存到目标文件中
    -h     : 帮助信息
    """.format(sys.argv[0]))
    
    
    
    opts,args = getopt.getopt(sys.argv[1:],"hu:d:o:")
    url = ""
    data = ""
    file_path = ""
    
    
    for op,value in opts:
        if op == '-u':
            url = value
        elif op == "-d":
            data = value
        elif op == "-o":
            file_path = value
        else:
            usage()
            sys.exit()
    
    print(url,data,file_path)

    三、执行以及结果

    D:PYSCRIPTS>python 加-的参数脚本.py -u http://www.baidu.com -d 'name=zhangsan,email=zhangsan@live.com' -o /tmp/a.txt
    http://www.baidu.com 'name=zhangsan,email=zhangsan@live.com' /tmp/a.txt
    
    D:PYSCRIPTS>

    四、总结

    1. 代码非常简单、可惜昨天没有写出满意的答案
    2. 代码只是实现了获取-参数后面的字符串,中间的代码逻辑没有进行处理
    3. requests模块请求一下就行了,然后打开文件保存就完事了,这里就不写了
    4. 只是做个简单的笔记,为了以后写类似的脚本能够找到方法;
    5. --参数的方法暂时还没弄,后面测试完再做更新;
  • 相关阅读:
    2018年7月28日杂记:迎来大三
    Spring第一课:基于XML装配bean(四),三种实例化方式:默认构造、静态工厂、实例工厂
    在Spring中使用静态工厂时发生的无法得到对象的问题
    队列的实现——java
    队列的实现——c++
    栈的实现——java
    栈的实现——c++
    双向链表的实现——java
    双向链表的实现——c++
    C++类模板 template <class T>
  • 原文地址:https://www.cnblogs.com/supery007/p/10898405.html
Copyright © 2011-2022 走看看