Python脚本带-的参数脚本

一、故事背景

由于先前的工作内容是做后台开发,对于脚本写的很少;
昨天参加面试遇到一道面试题,写一个python脚本;
通过脚本的后面的参数选项获取参数选项后面的字符串进行处理;
问题没记错的话大概是这样的:
python manage.py -u http://www.baidu.com -d ‘name=zhangsan,[email protected]‘ -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 protected]‘ -o /tmp/a.txt
http://www.baidu.com ‘name=zhangsan,[email protected]‘ /tmp/a.txt

D:\PYSCRIPTS>

四、总结

1. 代码非常简单、可惜昨天没有写出满意的答案
2. 代码只是实现了获取-参数后面的字符串,中间的代码逻辑没有进行处理
3. requests模块请求一下就行了,然后打开文件保存就完事了,这里就不写了
4. 只是做个简单的笔记,为了以后写类似的脚本能够找到方法;
5. --参数的方法暂时还没弄,后面测试完再做更新;

原文地址:https://www.cnblogs.com/supery007/p/10898405.html

时间: 2024-11-01 19:28:20

Python脚本带-的参数脚本的相关文章

python中带*及**参数

python在定义函数的时候,不仅可以设置普通的形参:如 def fun(arr1,arr2='我是2号参数'): #arr1为必传参数,arr2可以不用 ,另外还可以传入两种特殊的参数:带*或**的参数.这两类形式的参数都可以传入任意数量的实参,它们的不同点主要在于*参数传入的为一个元祖(tuple):**参数出入的则为一个字典(dict).由于传入的参数数量不确定,因此当它们与普通参数放在一起时,必须把它们放在最后. 下面展现它们的应用实例: def oneStar(*args):     

命令行运行Python脚本时传入参数的三种方式

三种常用的方式如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. python script.py 0,1,2 10python script.py -gpus=0,1,2 --batch-size=10python script.py -gpus=0,1,2 --batch_size=10123这三种格式对应不同的参数解析方式,分别为sys.argv, argparse, tf.app.run, 前两者是python自带的功能,后者是ten

[Python]在python中调用shell脚本,并传入参数-02python操作shell实例

首先创建2个shell脚本文件,测试用. test_shell_no_para.sh 运行时,不需要传递参数 test_shell_2_para.sh 运行时,需要传递2个参数  test_shell_no_para.sh 内容如下:  test_shell_2_para.sh内容如下 注意含有变量的字符串要用 双引号 括起来 直接在命令行运行 test_shell_2_para.sh 执行结果如下: [email protected]348-G4:~$ sh test_shell_2_para

tcl脚本学习十一:proc应用 (带默认参数)

lesson 11 : proc应用 (带默认参数) 1.//使用过程的时候,不一定输入所有的参数值.过程的输入参数可以有默认值.默认值由{默认参数名 默认值}指定.如果调用过程时没有指定这些参数的值则会使用其默认值,否则使用输入值来替代默认值.在使用默认参数的时候要注意,如果默认参数之后还有非默认参数,则在调用此过程的时候,默认参数的值也要求输入,否则会出错.这是因为 Tcl 调用过程的时候是根据位置来匹配参数和输入值的2.如果参数列表中最后一个参数是 args 的话,则过程可以接收可变数目的

PHP输出javascript脚本,带php参数,函数传参字符串并带有变量

1.在php中,有的时候我们需要echo出js脚本,并且这个脚本里带有php设置的变量 怎么输出,有点讲究,记下来备用.方法如下: (1)第一种方法 <?php $_hg = 'hong'; echo '<script type="text/javascript">alert("我的名字是'.$_hg.'");history.back();</script>'; ?> (2)第二种方法,实施改变单引号,双引号的引用 <?ph

python——复制目录结构小脚本

引言 有个需要,需要把某个目录下的目录结构进行复制,不要文件,当目录结构很少的时候可以手工去建立,当目录结构复杂,目录层次很深,目录很多的时候,这个时候要是还是手动去建立的话,实在不是一种好的方法,弄不好会死人的.写一个python脚本来处理吧. 首先了解 写python脚本前,先了解几个东西 #!/usr/bin/python 这个东西写过脚本的人都知道,用来标明该脚本的执行器,类似的还有 #!/bin/bash 通过bash来执行 #!/usr/local/php/bin/php 通过php

使用python修改QQ密保(脚本)

一.基于以下目的: 1.为了增加对Http协议理解能力,对QQ密保修改的请求进行了分析 2.为了锻炼python的编写能力 3.对web综合知识的理解 花了点时间写了这个脚本,下面介绍脚本的过程 二.分析环境 1.使用firefox,firefox比chrome的优点是,firefox的开发者工具中,网络模块中有编辑和重发功能,可以很快验证包是否正确 2.使用pycharm+python3.5,python网络库丰富,编写方便 3.python相关库 rsa==3.4.2 requests==2

Shell脚本的输入参数处理

参数处理-Shell传入参数的处理 1. $# 传递到脚本的参数个数 2. $* 以一个单字符串显示所有向脚本传递的参数.与位置变量不同,此选项参数可超过9个 3.脚本运行的当前进程ID号  4. $! 后台运行的最后一个进程的进程ID号  5. [email protected] 与$#相同,但是使用时加引号,并在引号中返回每个参数  6. $- 显示shell使用的当前选项,与set命令功能相同  7. $? 显示最后命令的退出状态.0表示没有错误,其他任何值表明有错误. 变量含义: $0 

pig脚本不需要后缀名(python tempfile模块生成pig脚本临时文件,执行)

pig 脚本运行不需要后缀名 pig脚本名为tempfile,无后缀名 用pig -f tempfile 可直接运行 另外,pig tempfile也可以直接运行 这样就可以用python临时文件存储pig脚本内容直接调用 python调用pig脚本的一种方式 将pig脚本用任意文件存储,执行时写入python的临时文件(tempfile模块操作),执行结束后删除.执行过程: 用tempfile模块NamedTemporaryFile生成临时文件,名字默认随机,然后,可以用tempfile.na