【python安全攻防:argparse模块】python脚本接收命令行参数

argparse模块

简介

  1. python内置
  2. 用于命令行选项与参数解析

使用步骤

这三步,背下来!

  1. 创建ArgumentParser()对象
  2. 调用add_argument()方法添加参数
  3. 使用parse_args()解析添加的参数

简单示例

示例代码:

【python安全攻防:argparse模块】python脚本接收命令行参数

执行结果:

【python安全攻防:argparse模块】python脚本接收命令行参数

改写python脚本

改写python脚本,让它接收命令行参数!

主要函数:

【python安全攻防:argparse模块】python脚本接收命令行参数

改写后的脚本内容:

【python安全攻防:argparse模块】python脚本接收命令行参数

执行结果:

【python安全攻防:argparse模块】python脚本接收命令行参数

add_argument()方法

看得出来这三个步骤只有第二个,也就是解析命令行参数比较复杂。

它的作用是定义如何解析命令行参数,比如

  1. '-d', '--domain'就是说接收命令选项字符串的名字,也就是我们可以使用-d传递参数,也可以使用–domain传递;
  2. dest是解析后的参数名称,也就是把我们传进来的参数值重新指定了参数名domain;
  3. default是参数值的默认值;
  4. type是命令行参数被转换的类型;
  5. help是参数的帮助信息。
  6. nargs可以不加,我当时是为了试试。

因为参数有很多,这里就不一一列举了,想了解更多可以自行百度。

阅读GitHub上已有的python脚本

这里就以前两天说的那个JSFinder举例,我们一起看下它的源码,看看它是怎么接受参数的。

【python安全攻防:argparse模块】python脚本接收命令行参数

完全没得区别!成了!

提前剧透

我简单把我上边写的那个示例脚本传到渗透测试平台,试试水。

【python安全攻防:argparse模块】python脚本接收命令行参数