python Socket实例练习

Posted 一只小小寄居蟹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python Socket实例练习相关的知识,希望对你有一定的参考价值。

简单的套接字通信

server

import socket


sock_server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock_server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)  # 重用地址端口
sock_server.bind((‘127.0.0.1‘, 8088))

sock_server.listen(1)  # 开始监听,1代表在允许有一个连接排队,更多的新连接连进来时就会被拒绝
print(‘starting...‘)
while True:
    conn, client_addr = sock_server.accept()  # 阻塞直到有连接为止,有了一个新连接进来后,就会为这个请求生成一个连接对象

    print(client_addr)

    while True:
        try:
            data = conn.recv(1024) # 接收1024个字节
            if not data: break  # 适用于linux操作系统,防止客户端断开连接后死循环
            print(‘客户端的数据‘, data)

            conn.sendall(data.upper())  # 把收到的数据再全部返回给客户端

        except ConnectionResetError:  # 适用于windows操作系统,防止客户端断开连接后死循环
            break
    conn.close()

server.close()

client

import socket

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print(client)


client.connect((‘127.0.0.1‘, 8088))

while True:
    data = input(‘input >>>‘)
    if not data:  # 如果数据为空,继续输入
        continue
    client.send(data.encode(‘utf-8‘))  # 发送数据

    data = client.recv(1024)   # 接收数据
    print(‘接收数据 =‘ , data.decode())

client.close()  # 关闭

server输出

starting...
(‘127.0.0.1‘, 4612)
客户端的数据 b‘hellp‘
客户端的数据 b‘java‘
(‘127.0.0.1‘, 4618)
客户端的数据 b‘abc‘
客户端的数据 b‘cd‘

 client1输出

<socket.socket fd=216, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0>
input >>>hellp
接收数据 = HELLP
input >>>java
接收数据 = JAVA
input >>>
Process finished with exit code -1 # 关闭client1

 client2输出

<socket.socket fd=216, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0>
input >>>abc
接收数据 = ABC
input >>>cd
接收数据 = CD
input >>>

模拟ssh远程执行命令  

sever端

import socket
import subprocess


def cmd_exec(cmd):
    """
    执行shell命令
    :param cmd:
    :return:
    """
    p = subprocess.Popen(cmd, shell=True,
    stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE)

    stdout, stderr = p.communicate()
    if p.returncode != 0:
        return stderr
    return stdout

sock_server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock_server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)  # 重用地址端口
sock_server.bind((‘127.0.0.1‘, 8088))

sock_server.listen(1)  # 开始监听,1代表在允许有一个连接排队,更多的新连接连进来时就会被拒绝
print(‘starting...‘)
while True:
    conn, client_addr = sock_server.accept()  # 阻塞直到有连接为止,有了一个新连接进来后,就会为这个请求生成一个连接对象

    print(client_addr)

    while True:
        try:
            data = conn.recv(1024) # 接收1024个字节
            if not data: break  # 适用于linux操作系统,防止客户端断开连接后死循环
            print(‘客户端的命令‘, data.decode(‘GBK‘))
            res = cmd_exec(data.decode(‘GBK‘))  # 执行cmd命令
            print(res)
            conn.sendall(res)  # 把收到的数据再全部返回给客户端

        except ConnectionResetError:  # 适用于windows操作系统,防止客户端断开连接后死循环
            break
    conn.close()

server.close()

client端

import socket

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print(client)


client.connect((‘127.0.0.1‘, 8088))

while True:
    data = input(‘input >>>‘)
    if not data:  # 如果数据为空,继续输入
        continue
    client.send(data.encode(‘GBK‘))  # 发送数据

    response = bytes()
    data = client.recv(1024)   # 接收数据

    print(‘接收数据 =‘, data.decode(‘gbk‘, ‘ignore‘))  # 如果设置为ignore,则会忽略非法字符; 

client.close()  # 关闭 

server输出

 

starting...
(127.0.0.1, 6091)
客户端的命令 ipconfig/all
7705 b
Windows IP xc5xe4xd6xc3

   xd6xf7xbbxfaxc3xfb  . . . . . . . . . . . . . : jingjing-PC
   xd6xf7 DNS xbaxf3xd7xba . . . . . . . . . . . : 
   xbdxdaxb5xe3xc0xe0xd0xcd  . . . . . . . . . . . . : xbbxecxbaxcf
   IP xc2xb7xd3xc9xd2xd1xc6xf4xd3xc3 . . . . . . . . . . : xb7xf1
   WINS xb4xfaxc0xedxd2xd1xc6xf4xd3xc3 . . . . . . . . . : xb7xf1

xd2xd4xccxabxcdxf8xcaxcaxc5xe4xc6xf7 xb1xbexb5xd8xc1xacxbdxd3 3:

   xc3xbdxccxe5xd7xb4xccxac  . . . . . . . . . . . . : xc3xbdxccxe5xd2xd1xb6xcfxbfxaa
   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Bluetooth PAN Network Adapter
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 60-F8-1D-AD-89-EF
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xcaxc7
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7

xcexdexcfxdfxbexd6xd3xf2xcdxf8xcaxcaxc5xe4xc6xf7 xcexdexcfxdfxcdxf8xc2xe7xc1xacxbdxd3:

   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Broadcom 802.11ac Network Adapter
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 60-F8-1D-AD-89-EE
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xcaxc7
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7
   xb1xbexb5xd8xc1xb4xbdxd3 IPv6 xb5xd8xd6xb7. . . . . . . . : fe80::55d1:e185:f929:8ce3%13(xcaxd7xd1xa1) 
   IPv4 xb5xd8xd6xb7 . . . . . . . . . . . . : 192.168.31.125(xcaxd7xd1xa1) 
   xd7xd3xcdxf8xd1xdaxc2xeb  . . . . . . . . . . . . : 255.255.255.0
   xbbxf1xb5xc3xd7xe2xd4xbcxb5xc4xcaxb1xbcxe4  . . . . . . . . . : 2018xc4xea7xd4xc25xc8xd5 20:46:29
   xd7xe2xd4xbcxb9xfdxc6xdaxb5xc4xcaxb1xbcxe4  . . . . . . . . . : 2018xc4xea7xd4xc26xc8xd5 8:46:29
   xc4xacxc8xcfxcdxf8xb9xd8. . . . . . . . . . . . . : 192.168.31.1
   DHCP xb7xfexcexf1xc6xf7 . . . . . . . . . . . : 192.168.31.1
   DHCPv6 IAID . . . . . . . . . . . : 291567645
   DHCPv6 xbfxcdxbbxa7xb6xcb DUID  . . . . . . . : 00-01-00-01-21-7C-0D-6E-60-F8-1D-AD-89-EE
   DNS xb7xfexcexf1xc6xf7  . . . . . . . . . . . : 114.114.114.114
   TCPIP xc9xcfxb5xc4 NetBIOS  . . . . . . . : xd2xd1xc6xf4xd3xc3

xd2xd4xccxabxcdxf8xcaxcaxc5xe4xc6xf7 VirtualBox Host-Only Network:

   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : VirtualBox Host-Only Ethernet Adapter
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 0A-00-27-00-00-13
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7
   xb1xbexb5xd8xc1xb4xbdxd3 IPv6 xb5xd8xd6xb7. . . . . . . . : fe80::7d26:2c96:84f1:6c4d%19(xcaxd7xd1xa1) 
   xd7xd4xb6xafxc5xe4xd6xc3 IPv4 xb5xd8xd6xb7  . . . . . . . : 169.254.108.77(xcaxd7xd1xa1) 
   xd7xd3xcdxf8xd1xdaxc2xeb  . . . . . . . . . . . . : 255.255.0.0
   xc4xacxc8xcfxcdxf8xb9xd8. . . . . . . . . . . . . : 192.168.56.255
   DHCPv6 IAID . . . . . . . . . . . : 336199719
   DHCPv6 xbfxcdxbbxa7xb6xcb DUID  . . . . . . . : 00-01-00-01-21-7C-0D-6E-60-F8-1D-AD-89-EE
   DNS xb7xfexcexf1xc6xf7  . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1
   TCPIP xc9xcfxb5xc4 NetBIOS  . . . . . . . : xd2xd1xc6xf4xd3xc3

xd2xd4xccxabxcdxf8xcaxcaxc5xe4xc6xf7 VirtualBox Host-Only Network #2:

   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : VirtualBox Host-Only Ethernet Adapter #2
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 0A-00-27-00-00-14
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7
   xb1xbexb5xd8xc1xb4xbdxd3 IPv6 xb5xd8xd6xb7. . . . . . . . : fe80::641c:b67e:fa43:a28d%20(xcaxd7xd1xa1) 
   IPv4 xb5xd8xd6xb7 . . . . . . . . . . . . : 192.168.96.1(xcaxd7xd1xa1) 
   xd7xd3xcdxf8xd1xdaxc2xeb  . . . . . . . . . . . . : 255.255.255.0
   xc4xacxc8xcfxcdxf8xb9xd8. . . . . . . . . . . . . : 
   DHCPv6 IAID . . . . . . . . . . . : 537526311
   DHCPv6 xbfxcdxbbxa7xb6xcb DUID  . . . . . . . : 00-01-00-01-21-7C-0D-6E-60-F8-1D-AD-89-EE
   DNS xb7xfexcexf1xc6xf7  . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1
   TCPIP xc9xcfxb5xc4 NetBIOS  . . . . . . . : xd2xd1xc6xf4xd3xc3

xd2xd4xccxabxcdxf8xcaxcaxc5xe4xc6xf7 VMware Network Adapter VMnet1:

   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet1
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-50-56-C0-00-01
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xcaxc7
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7
   xb1xbexb5xd8xc1xb4xbdxd3 IPv6 xb5xd8xd6xb7. . . . . . . . : fe80::20c1:b2f0:8bff:626c%25(xcaxd7xd1xa1) 
   IPv4 xb5xd8xd6xb7 . . . . . . . . . . . . : 192.168.109.1(xcaxd7xd1xa1) 
   xd7xd3xcdxf8xd1xdaxc2xeb  . . . . . . . . . . . . : 255.255.255.0
   xbbxf1xb5xc3xd7xe2xd4xbcxb5xc4xcaxb1xbcxe4  . . . . . . . . . : 2018xc4xea7xd4xc25xc8xd5 20:46:20
   xd7xe2xd4xbcxb9xfdxc6xdaxb5xc4xcaxb1xbcxe4  . . . . . . . . . : 2018xc4xea7xd4xc25xc8xd5 23:46:20
   xc4xacxc8xcfxcdxf8xb9xd8. . . . . . . . . . . . . : 
   DHCP xb7xfexcexf1xc6xf7 . . . . . . . . . . . : 192.168.109.254
   DHCPv6 IAID . . . . . . . . . . . : 385896534
   DHCPv6 xbfxcdxbbxa7xb6xcb DUID  . . . . . . . : 00-01-00-01-21-7C-0D-6E-60-F8-1D-AD-89-EE
   DNS xb7xfexcexf1xc6xf7  . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1
   TCPIP xc9xcfxb5xc4 NetBIOS  . . . . . . . : xd2xd1xc6xf4xd3xc3

xd2xd4xccxabxcdxf8xcaxcaxc5xe4xc6xf7 VMware Network Adapter VMnet8:

   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet8
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-50-56-C0-00-08
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xcaxc7
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7
   xb1xbexb5xd8xc1xb4xbdxd3 IPv6 xb5xd8xd6xb7. . . . . . . . : fe80::61fd:5f66:1f70:cb3d%26(xcaxd7xd1xa1) 
   IPv4 xb5xd8xd6xb7 . . . . . . . . . . . . : 192.168.5.1(xcaxd7xd1xa1) 
   xd7xd3xcdxf8xd1xdaxc2xeb  . . . . . . . . . . . . : 255.255.255.0
   xbbxf1xb5xc3xd7xe2xd4xbcxb5xc4xcaxb1xbcxe4  . . . . . . . . . : 2018xc4xea7xd4xc25xc8xd5 20:46:21
   xd7xe2xd4xbcxb9xfdxc6xdaxb5xc4xcaxb1xbcxe4  . . . . . . . . . : 2018xc4xea7xd4xc25xc8xd5 23:46:21
   xc4xacxc8xcfxcdxf8xb9xd8. . . . . . . . . . . . . : 
   DHCP xb7xfexcexf1xc6xf7 . . . . . . . . . . . : 192.168.5.254
   DHCPv6 IAID . . . . . . . . . . . : 402673750
   DHCPv6 xbfxcdxbbxa7xb6xcb DUID  . . . . . . . : 00-01-00-01-21-7C-0D-6E-60-F8-1D-AD-89-EE
   DNS xb7xfexcexf1xc6xf7  . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1
   xd6xf7 WINS xb7xfexcexf1xc6xf7  . . . . . . . . . : 192.168.5.2
   TCPIP xc9xcfxb5xc4 NetBIOS  . . . . . . . : xd2xd1xc6xf4xd3xc3

xcbxedxb5xc0xcaxcaxc5xe4xc6xf7 xb1xbexb5xd8xc1xacxbdxd3* 14:

   xc3xbdxccxe5xd7xb4xccxac  . . . . . . . . . . . . : xc3xbdxccxe5xd2xd1xb6xcfxbfxaa
   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #2
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7

xcbxedxb5xc0xcaxcaxc5xe4xc6xf7 Teredo Tunneling Pseudo-Interface:

   xc3xbdxccxe5xd7xb4xccxac  . . . . . . . . . . . . : xc3xbdxccxe5xd2xd1xb6xcfxbfxaa
   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7

xcbxedxb5xc0xcaxcaxc5xe4xc6xf7 isatap.{0DA4A980-7247-4922-AAFB-55760B865C15}:

   xc3xbdxccxe5xd7xb4xccxac  . . . . . . . . . . . . : xc3xbdxccxe5xd2xd1xb6xcfxbfxaa
   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #3
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7

xcbxedxb5xc0xcaxcaxc5xe4xc6xf7 isatap.localdomain:

   xc3xbdxccxe5xd7xb4xccxac  . . . . . . . . . . . . : xc3xbdxccxe5xd2xd1xb6xcfxbfxaa
   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #5
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7

xcbxedxb5xc0xcaxcaxc5xe4xc6xf7 xb1xbexb5xd8xc1xacxbdxd3* 15:

   xc3xbdxccxe5xd7xb4xccxac  . . . . . . . . . . . . : xc3xbdxccxe5xd2xd1xb6xcfxbfxaa
   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #6
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7

xcbxedxb5xc0xcaxcaxc5xe4xc6xf7 isatap.{94C5F926-3E20-4589-A88E-54A36934D42C}:

   xc3xbdxccxe5xd7xb4xccxac  . . . . . . . . . . . . : xc3xbdxccxe5xd2xd1xb6xcfxbfxaa
   xc1xacxbdxd3xccxd8xb6xa8xb5xc4 DNS xbaxf3xd7xba . . . . . . . : 
   xc3xe8xcaxf6. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #8
   xcexefxc0xedxb5xd8xd6xb7. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP xd2xd1xc6xf4xd3xc3 . . . . . . . . . . . : xb7xf1
   xd7xd4xb6xafxc5xe4xd6xc3xd2xd1xc6xf4xd3xc3. . . . . . . . . . : xcaxc7

客户端的命令 ls
61 b"‘ls‘ xb2xbbxcaxc7xc4xdaxb2xbfxbbxf2xcdxe2xb2xbfxc3xfcxc1xeexa3xacxd2xb2xb2xbbxcaxc7xbfxc9xd4xcbxd0xd0xb5xc4xb3xccxd0xf2
xbbxf2xc5xfaxb4xa6xc0xedxcexc4xbcxfexa1xa3
"

 

  

client输出

input >>>ipconfig/all
接收数据 = 
Windows IP 配置

   主机名  . . . . . . . . . . . . . : -PC
   主 DNS 后缀 . . . . . . . . . . . : 
   节点类型  . . . . . . . . . . . . : 混合
   IP 路由已启用 . . . . . . . . . . : 否
   WINS 代理已启用 . . . . . . . . . : 否

以太网适配器 本地连接 3:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . : 
   描述. . . . . . . . . . . . . . . : Bluetooth PAN Network Adapter
   物理地址. . . . . . . . . . . . . : 60-F8-1D-AD-89-EF
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是

无线局域网适配器 无线网络连接:

   连接特定的 DNS 后缀 . . . . . . . : 
   描述. . . . . . . . . . . . . . . : Broadcom 802.11ac Network Adapter
   物理地址. . . . . . . . . . . . . : 60-F8-1D-AD-89-EE
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . : fe80::55d1:e185:f929:8ce3%13(首选) 
   IPv4 地址 . . . . . . . . . . . . : 192.168.31.125(首选) 
   子网掩
input >>>ls
接收数据 =   . . . . . . . . . . . . : 255.255.255.0
   获得租约的时间  . . . . . . . . . : 2018年7月5日 20:46:29
   租约过期的时间  . . . . . . . . . : 2018年7月6日 8:46:29
   默认网关. . . . . . . . . . . . . : 192.168.31.1
   DHCP 服务器 . . . . . . . . . . . : 192.168.31.1
   DHCPv6 IAID . . . . . . . . . . . : 291567645
   DHCPv6 客户端 DUID  . . . . . . . : 00-01-00-01-21-7C-0D-6E-60-F8-1D-AD-89-EE
   DNS 服务器  . . . . . . . . . . . : 114.114.114.114
   TCPIP 上的 NetBIOS  . . . . . . . : 已启用

以太网适配器 VirtualBox Host-Only Network:

   连接特定的 DNS 后缀 . . . . . . . : 
   描述. . . . . . . . . . . . . . . : VirtualBox Host-Only Ethernet Adapter
   物理地址. . . . . . . . . . . . . : 0A-00-27-00-00-13
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . : fe80::7d26:2c96:84f1:6c4d%19(首选) 
   自动配置 IPv4 地址  . . . . . . . : 169.254.108.77(首选) 
   子网掩码  . . . . . . . . . . . . : 255.255.0.0
   默认网关. . 
input >>> #出现粘包现象

  

  

以上是关于python Socket实例练习的主要内容,如果未能解决你的问题,请参考以下文章

Python--网络编程-----socket代码实例

Python练习册 第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-),(http://tieba.baidu.com/p/2166231880)(代码片段

Python--网络编程-----socket代码实例--聊天软件升级版

python学习40——课后练习

Python 练习实例48

Python 练习实例77