一、故事背景

由于先前的工作内容是做后台开发,对于脚本写的很少;
昨天参加面试遇到一道面试题,写一个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. --参数的方法暂时还没弄,后面测试完再做更新;

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

  1. python 定义带默认参数的函数

  2. python 脚本带参数

    如果想对python脚本传参数,python中对应的argc, argv(c语言的命令行参数)是什么呢? 需要模块:sys参数个数:len(sys.argv)脚本名:    sys.argv[0]参数 ...

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

    原文链接:命令行运行Python脚本时传入参数的三种方式(原文的几处错误在此已纠正) 如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. pyth ...

  4. linux,crontab定时任务中为脚本指定使用参数,crontab的脚本中是否可以带参数

    需求描述: 今天在写脚本的时候,脚本的运行需要给出几个参数,那么就考虑 在crontab写定时任务的时候,是否也是能够在脚本中,增加参数呢, 因为以前没有这么用过,所以呢,就进行一次测试. 测试过程: ...

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

    首先创建2个shell脚本文件,测试用. test_shell_no_para.sh 运行时,不需要传递参数 test_shell_2_para.sh 运行时,需要传递2个参数  test_shell ...

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

    引言 有个需要,需要把某个目录下的目录结构进行复制,不要文件,当目录结构很少的时候可以手工去建立,当目录结构复杂,目录层次很深,目录很多的时候,这个时候要是还是手动去建立的话,实在不是一种好的方法,弄 ...

  7. Python、Lua和Ruby——脚本大P.K.

    转自Python.Lua和Ruby--脚本大P.K. Python versus Lua Versus Ruby Python.Lua和Ruby--脚本大P.K. Tom Gutschmidt 著 赖 ...

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

    一.基于以下目的: 1.为了增加对Http协议理解能力,对QQ密保修改的请求进行了分析 2.为了锻炼python的编写能力 3.对web综合知识的理解 花了点时间写了这个脚本,下面介绍脚本的过程 二. ...

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

    pig 脚本运行不需要后缀名 pig脚本名为tempfile,无后缀名 用pig -f tempfile 可直接运行 另外,pig tempfile也可以直接运行 这样就可以用python临时文件存储 ...

随机推荐

  1. 网站title,meta,description如何设置,长度大小多少合适!

    转自:http://www.os1010.com/archives/1682 如 何 把 握 html 网 页 中 的 meta 标 签 对于高级的搜索引擎来说,html 的meta 标签并不是什么新 ...

  2. jdk1.8 HashMap & ConcurrentHashMap

    JDK1.8逐字逐句带你理解ConcurrentHashMap https://blog.csdn.net/u012403290 JDK1.8理解HashMap https://blog.csdn.n ...

  3. appium的第一个实例

    # !/usr/bin/env python # -*- coding:utf-8 -*- from appium import webdriver import time import unitte ...

  4. 什么是vue生命周期和生命周期钩子函数?

    原文地址 vue生命周期简介 咱们从上图可以很明显的看出现在vue2.0都包括了哪些生命周期的函数了. 生命周期探究 对于执行顺序和什么时候执行,看上面两个图基本有个了解了.下面我们将结合代码去看看钩 ...

  5. ParallelForTransform作业

    ParallelForTransform作业是另一种ParallelFor作业 ; 专为在变形上操作而设计. 注意:ParallelForTransform作业是Unity中用于实现IJobParal ...

  6. pandas中对日期型数据进行处理

    因为数据不方便展示,直接上代码. 将字符串转为datetime64[ns]格式: pd.to_datetime('2019-12-20') or pd.to_datetime('20191220') ...

  7. LeetCode刷题2——颠倒二进制位

    一.题目要求 二.题目背景 此题依旧属于位运算范畴 知识点1:有符号和无符号二进制是怎样表现的? 对于有符号数,最高位为1说明是个负数 知识点2:进制之间的相互转换 (1)十进制转十六进制 hex(n ...

  8. 攻防世界新手Misc writeup

    ext3 在Linux,使用root账户挂载linux文件,打开后使用find *|grep flag查找到一个flag.txt,打开后是base64编码,解码获得flag. give_you_fla ...

  9. Maven跳过单元测试的两种方式

    -DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下. -Dmaven.test.skip=true,不执行测试用例,也不编译测试 ...

  10. CWMP开源代码研究——git代码工程

    原创作品,转载请注明出处,严禁非法转载.如有错误,请留言! email:40879506@qq.com 声明:本系列涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅 ...