Python与Hack之window下运行带参数的Python脚本,实现一个简单的端口扫描器
1.前提是:windows已经配置好Python的环境变量;
2.进入cmd命令行模式:
**输入python命令,检测是否环境配置好:显示这样说明配置环境变量没问题

**用cd命令进入Python脚本所在的目录:


**Python脚本所在目录下输入命令:python "这里直接把python脚本拖拽过来" 后边加参数:

**脚本的代码问题可能导致,cmd命令行下运行脚本后没有任何反应,所以务必检查脚本正确:
**这里要说明的是可以使用print()函数逐行检测代码,输出对应的参数;
**Python3下的:
if (): //if后边必须跟else才能执行
else:
下面是一个Python脚本写的端口扫描器:
#!C:\Python
#coding = utf-8
import optparse
import socket
from socket import * def connScan(tgtHost,tgtPort):
try:
connSkt=socket(AF_INET,SOCK_STREAM)
connSkt.connect((tgtHost,tgtPort))
connSkt.send('ViolentPython\r\n')
results=connSkt.recv(100)
print('[+] %d/tcp open'% tgtPort)
print('[+]'+str(results))
connSkt.close()
except:
print('[-]%d/tcp closed'% tgtPort)
def portScan(tgtHost,tgtPorts):
try:
print("Hello Word")
tgtIP=gethostbyname(tgtHost)
except:
print("[-] Cannot resolve '%s':Unknown host"%tgtHost)
return
try:
tgtName=gethostbyaddr(tgtIP)
print('\n[+] Scan Results for:'+tgtName[0])
except:
print('\n[+] Scan Results for:'+tgtIP)
setdefaulttimeout(1)
for tgtPort in tgtPorts:
print('Scanning port:'+tgtPort)
connScan(tgtHost,int(tgtPort))
def main():
parser=optparse.OptionParser('usage %prog -H'+\
'<target host> -p <target port>')
parser.add_option('-H',dest='tgtHost',type='string',\
help='specify target host')
parser.add_option('-p',dest='tgtPort',type='string',\
help='specify target port')
(options,args)=parser.parse_args()
tgtHost=options.tgtHost
tgtPorts=str(options.tgtPort).split(',')
print(tgtHost)
print(tgtPorts)
if (tgtHost==None) | (tgtPorts[0]==None):
print('[-] You must specify a target host and port[s].')
exit(0)
else:
portScan(tgtHost,tgtPorts)
if __name__=='__main__':
main() 运行结果如下:

Python与Hack之window下运行带参数的Python脚本,实现一个简单的端口扫描器的更多相关文章
- 运行带参数的python脚本
问题描述: 要执行python脚本,有哪几种方法. 特别是看书的时候,书上只讲解了如何在linux下运行,windows根本就没有那些命令,该怎么办呢? 方法1:python自带的IDLE编辑器 Ru ...
- Qt配置cmake;运行带参数的程序
配置cmake编译器,步骤如下: 步骤1: Qt下新建一个project. 步骤2: 在该project目录下创建一个CMakeLists.txt文件,并按规范编写该文件. Tip: projec ...
- SSRS 系列 - 使用带参数的 MDX 查询实现一个分组聚合功能的报表
SSRS 系列 - 使用带参数的 MDX 查询实现一个分组聚合功能的报表 SSRS 系列 - 使用带参数的 MDX 查询实现一个分组聚合功能的报表 2013-10-09 23:09 by BI Wor ...
- Java程序调用带参数的shell脚本返回值
Java程序调用带参数的shell脚本返回值 首先来看看linux中shell变量(\(#,\)@,$0,$1,\(2)的含义解释 变量说明: - \)$ Shell本身的PID(ProcessI ...
- 使用Python编写简单的端口扫描器的实例分享【转】
转自 使用Python编写简单的端口扫描器的实例分享_python_脚本之家 http://www.jb51.net/article/76630.htm -*- coding:utf8 -*- #!/ ...
- python虚拟环境virtualenv、virtualenv下运行IDLE、powershell 运行脚本由执行策略引起的问题
一.为什么要创建虚拟环境: 应为在开发中会有同时对一个包不同版本的需求,创建多个开发环境就能解决这个问题.或许也会有对python不同版本的需求,这就需要使用程序来管理不同的版本,virtualenv ...
- Windows 下针对python脚本做一个简单的进程保护
前提: 大家运行的脚本程序经常会碰到系统异常关闭.或被其他用户错杀的情况.这样就需要一个进程保护的工具. 本文结合windows 的计划任务,实现一个简单的进程保护的功能. 利用py2exe生产 ex ...
- C#调用带参数的python脚本
问题描述:使用C#调用下面的带参数的用python写的方法,并且想要获取返回值. def Quadratic_Equations(a,b,c): D=b**2-4*a*c ans=[] ans.app ...
- 微软BI 之SSRS 系列 - 使用带参数的 MDX 查询实现一个分组聚合功能的报表
基于数据仓库上的 SSRS 报表展示,一般可以直接通过 SQL 查询,存储过程,视图或者表等多种方式将数据加载并呈现在报表中.但是如果是基于 Cube 多维数据集的数据查询,就不能再使用 SQL 的语 ...
随机推荐
- 后台session过期,tomcat重启,自动跳转页面js写法
if (window != top) { //top.location.href = location.href;//因为系统分为普通用户和后台,所以暂时写死 if(top.location.href ...
- Mysql 基础1
Mysql int 整型float 小数double 小数varchar(20) 字符串bit 布尔型数据datetime 日期时间类型text 长文本 money 存货币image 存二进制数据 数 ...
- .Net如何在后台设置日期格式,并显示在前台页面上
其实方法比较老咯,有比这个简单的朋友请留言哈,我的思路是先将数据库中的日期格式读出来,在后台转化成DatetTime类型,然后在使用DateTime的内部方法设置日期格式,代码如下: DateTime ...
- .Net的DataGrid的使用
先上图吧
- Collection 集合类
ArrayList: 基于动态数组的List 它有两个重要的变量,size为存储的数据的个数.elementData 数组则是arraylist 的基础,因为他的内部就是通过这个数组来存储数据的. p ...
- c语言运算符
一.op=形式的赋值操作符 int a=0; a+=1; //等价于 a=a+1;// a*=1; 二.op=类表达式 int a=10,b=5; a/=b;//等价于a=a/b; a*=b+1; ...
- EVE ToDo
1. 打捞无人机 2. 无人机命中
- sql server 常用脚本(日常查询所需)
1:查看sql server代理中作业的运行状况的脚本 -- descr : a simple sql script to view sql server jobs run status -- las ...
- C#回顾 – 4.IEnumerable 集合
- HashMap在并发下可能出现的问题分析
我们都知道,HashMap在并发环境下使用可能出现问题,但是具体表现,以及为什么出现并发问题,可能并不是所有人都了解,这篇文章记录一下HashMap在多线程环境下可能出现的问题以及如何避免. 在分析H ...