Python網路程式設計

2021-10-24 19:50:32 字數 2205 閱讀 8159

import socket,sys

port=

[135

,149

,445

,1433

,3306

,3389

,1521

]#常用埠

defopen

(ip,port)

:

s=socket.socket(

)#建立並返回socket物件

s.connect(

(ip,port)

)#將socket連線到乙個主機上

try:

s.connect(

(ip,port)

)return

true

except

:return

false

defscan

(ip)

:for x in port:

#遍歷port

ifopen

(ip,x)

:print

("%s host ,%s open"

%(ip,x)

)else

:print

("%s host %s close"

%(ip,x)

)def

rscan

(ip)

:for x in

range

(s,e)

:#遍歷多個埠

ifopen

(ip,x)

:print

("%s host ,%s open"

%(ip, x)

)else

:print

("%s host %s close"

%(ip, x))if

len(sys.ar**)

<2:

#如果當前指令碼小於三個個引數,顯示用法

print

('''

this program prints files to the standard output

any number of files can be specified.

options include:

python.py scan.py host ports

python.py scan.py 127.0.0.1

python.py scan.py 127.0.0.1 80,90,1433,3306,3389

python.py scan.py 127.0.0.1 80-90

python.py scan.py 127.0.0.1 all

''')if

len(sys.ar**)==2

:#如果有三個引數(如:python.exe scan.py 127.0.0.1)

scan(sys.ar**[1]

)#呼叫scan函式掃瞄第三個引數(即127.0.0.1)

elif

(len

(sys.ar**)==3

):#掃瞄多個埠並且埠之間用逗號隔開

if','

in sys.ar**[2]

: p=sys.ar**[2]

p=p.split(

',')

#分割開這些埠並轉換成列表

for x in p:

a=int(x)

)#將字元型別轉換成整型

port=a

scan(sys.ar**[1]

)elif

('-'

in sys.ar**[2]

):#掃瞄a[0]-a[1]之間的所有埠

a=sys.ar**[2]

a=a.split(

'-')

s=int(a[0]

) e=

int(a[1]

) rscan(sys.ar**[1]

)elif

(sys.ar**==

'all'):

#掃瞄從1-65536的所有埠

s=1 e=

65536

rscan(sys.ar**[2]

)

在cmd中開啟執行就可以了-

python網路程式設計 TCP網路程式設計

tcp程式設計 客戶端 import socket 1 套接字 tcp socket socket.socket socket.af inet,socket.sock stream 2 建立鏈結 tcp socket.connect 172.27.35.1 8080 3 傳送資訊 tcp socke...

python 網路程式設計

今天晚上學習了一下python的網路程式設計,實現了client向server傳送資料,server反饋資訊 python 3.3 版本 server from socket import class tcpserver object def init self,serverport self.se...

python網路程式設計

網路通訊是計算機之間的程序之間的通訊。tcp程式設計 tcp連線建立是雙向通道,客戶端與服務端都可以給對方傳送資料。建立tcp連線時,主動發起連線的叫客戶端,被動響應連線的叫服務端。建立乙個tcp的socket連線 用socket family,type 建立套接字獲得socket物件。family...