国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python網絡編程詳解

Python網絡編程詳解

2020-12-15 00:14瀟瀟、寒 Python

這篇文章主要介紹了Python網絡編程詳解,涉及具體代碼示例,還是挺不錯的,這里分享給大家,供需要的朋友參考。

1、服務器就是一系列硬件或軟件,為一個或多個客戶端(服務的用戶)提供所需的“服務”。它存在唯一目的就是等待客戶端的請求,并響應它們(提供服務),然后等待更多請求。

2、客戶端/服務器架構既可以應用于計算機硬件,也可以應用于計算機軟件。

3、在服務器響應客戶端之前,首先會創建一個通信節點,它能夠使服務器監聽請求。

一、套接字:通信端點

1、套接字

  套接字是計算機網絡數據結構,它體現了上節中所描述的“通信端點”的概念。在任何類型的通信開始之前,網絡應用程序必須創建套接字。

  有兩種類型的套接字:基于文件和面向網絡的。

2、套接字地址:主機-端口對

  如果一個套接字像一個電話插孔-允許通信的一些基礎設施,那么主機名和端口號就像區號和電話號碼的組合。有效的端口號范圍為0-65535(小于1024的端口號預留給了系統)

3、面向連接的套接字和與無連接的套接字

  面向連接,在進行通信之前必須建立一個連接。實現這種連接類型主要協議是TCP(傳輸控制協議)

  無連接,在通信之前并不需要建立連接。主要協議是UDP(用戶數據報協議)

二、Python中的網絡編程

1、socket()模塊函數

為創建TCP/IP套接字:tcpSock = socket.socket(socket.AF_INEF,socket.SOCK_STREAM)

創建UDP/IP套接字:udpSock = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

2.常見的套接字對象方法和屬性

 

名稱 描述
服務器套接字方法  
s.bind()  將地址(主機名、端口號對)綁定到套接字上
s.listen() 設置并啟動TCP監聽器
s.accept() 被動接受TCP客戶端連接,一直等待直到連接到達(阻塞)
客戶端套接字方法  
s.connect() 主動發起TCP服務器連接
s.connect_ex() connect的擴展版本,此時會以錯誤代碼的形式返回問題,而不是拋出一個異常
普通的套接字方法  
s.recv() 接受TCP消息
s.send() 發送TCP消息
s.sendall() 完整的發送TCP消息
s.recvfrom() 接收UDP消息
s.shutdown() 關閉連接
s.close() 關閉套接字

 

3、創建TCP服務器

?
1
2
3
4
5
6
7
8
9
ss = socket()  #創建服務器套接字
ss.bind()      #套接字與地址綁定
ss.listen()      #監聽連接
inf_loop:       #服務器無限循環
  cs = ss.accept()     #接收客戶端連接
  comm_loop:        #通信循環
    cs.recv()/cs.send()  #對話(接收、發送)
  cs.close()       #關閉客戶端套接字
ss.close()        #關閉服務器套接字(可選)
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/env python
#TCP時間戳服務器
from socket import *
from time import ctime
HOST = ''
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST,PORT)
tcpSerSock = socket(AF_INET,SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)
while True:
  print('waiting for connecting...')
  tcpClisock, addr = tcpSerSock.accept()
  print('...connected from:',addr)
  while True:
    data = tcpClisock.recv(BUFSIZ)
    if not data:
      break
    tcpClisock.send('[%s] %s' % (bytes(ctime(),'utf-8'),data))
  tcpClisock.close()
tcpSerSock.close()

4、創建TCP客戶端

?
1
2
3
4
5
cs = socket()
cs.connect()
comm_loop:
  cs.send()/cs.recv()
cs.close()
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/env python
#TCP時間戳客戶端
from socket import *
HOST = '127.0.0.1'
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST,PORT)
tcpClisock = socket(AF_INET,SOCK_STREAM)
tcpClisock.connect(ADDR)
while True:
  data = input('> ')
  if not data:
    break
  tcpClisock.send(data)
  data = tcpClisock.recv(BUFSIZ)
  if not data:
    break
  print(data.decode('utf-8'))
tcpClisock.close()

5、創建UDP服務器

?
1
2
3
4
5
ss = socket()
ss.bind()
inf_loop:
  cs = ss.recvfrom()/ss.sendto()
ss.close()
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/env python
#UDP時間戳服務器
from socket import *
from time import ctime
HOST = ''
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST,PORT)
udpSerSock = socket(AF_INET,SOCK_DGRAM)
udpSerSock.bind(ADDR)
while True:
  print('waiting for message...')
  data, addr=udpSerSock.recvfrom(BUFSIZ)
  udpSerSock.sendto('[%s] %s' % (ctime(),data),addr)
  print('...received from and returned to:',addr)
udpSerSock.close()

6、創建UDP客戶端

?
1
2
3
4
cs = socket()
comm_loop:
  cs.send()/cs.recvfrom()
cs.close()
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/env python
#UDP時間戳客戶端
from socket import *
HOST = 'localhost'
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST,PORT)
udpClisock = socket(AF_INET,SOCK_DGRAM)
while True:
  data = input('> ')
  if not data:
    break
  udpClisock.sendto(data,ADDR)
  data, ADDR=udpClisock.recvfrom(BUFSIZ)
  if not data:
    break
  print(data)
udpClisock.close()

以上就是本文關于Python網絡編程詳解的全部內容,希望對大家有所幫助。有什么問題可以隨時留言,有問題我就改。。。

原文鏈接:http://www.cnblogs.com/caicairui/p/7749678.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 色com| 一区精品视频 | 99国产精品99久久久久久 | 亚洲日本va中文字幕 | 亚洲综合视频 | 欧美激情一区二区三区在线视频 | 欧美成视频 | 91精品国产91久久久久久吃药 | 亚洲精品久久久久久久久久久久久 | 亚洲一区二区三区四区的 | 午夜影院在线播放 | 亚洲精品乱码久久久久膏 | 日日干,天天干 | 97久久久| 日韩在线视频中文字幕 | 91亚洲视频 | 国产精品精品视频一区二区三区 | 久久av网| 99热这里有精品 | 欧美影 | 国产精品99久久 | 国产精品久久久久久久久久久久午夜片 | 欧美日韩一区在线 | 午夜高清视频 | 一级黄色免费毛片 | 国产视频中文字幕 | 久久综合九色综合欧美狠狠 | 成人激情视频 | 国产不卡精品视频 | 国产亚洲精品精品国产亚洲综合 | 天天曰夜夜操 | 国产日韩精品一区 | 欧美视频精品 | 欧美伊人 | 视频一区二区三区中文字幕 | 49vv看片免费| 天天操天天插 | 成人免费观看视频 | 精品国产综合 | 成人免费视频网站 | 人人鲁人人莫一区二区三区 |