zoukankan      html  css  js  c++  java
  • python网络编程

    Python网络编程:
      Python提供了两个级别访问的网络服务:
        低级别的网络服务支持基本的Socket,
          提供了标准的BSD Socket API,可以访问底层系统socket接口的全部方法
        高级别的网络服务模块SocketServer,
          提供了服务器中心类,可以简化网络服务器的开发

    Socket:
      套接字,应用程序通常通过套接字想网络发出请求或者网络应答

    socket()函数:
      socket.socket([family [,type[,proto]]])

      参数:
        family:套接字家族可以使AF_UNIX或者AF_INET
        type:套接字类型可以根据是面向连接的还是非连接的分为:SOCK_STREAM或SOCK_DGRAM
        protocol:一般不填默认为0


    Socket对象(内建)方法:

    简单实例

    服务端

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # 文件名:server.py
    
    import socket                                   # 导入 socket 模块
    
    s = socket.socket()                          # 创建 socket 对象
    host = socket.gethostname()                  # 获取本地主机名
    port = 12345                                 # 设置端口
    s.bind((host, port))                         # 绑定端口
    
    s.listen(5)                                  # 等待客户端连接
    while True:
        c, addr = s.accept()                     # 建立客户端连接
                                                 #c为socket对象,是当前客户端访问的socket,记录客户端的ip地址和端口信息,
    #当下一个客户端访问时,会创建另外的一个对应的socket对象
    print '连接地址:', addr c.send('欢迎访问菜鸟教程!') c.close() # 关闭连接

    客户端

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # 文件名:client.py
    
    import socket               # 导入 socket 模块
    
    s = socket.socket()         # 创建 socket 对象
    host = socket.gethostname() # 获取本地主机名
    port = 12345                # 设置端口好
    
    s.connect((host, port))
    print s.recv(1024)
    s.close()  


  • 相关阅读:
    Memcached简介
    TP5 volist
    Getting command line access to PHP and MySQL running MAMP on OSX
    PHP use
    PHP 命名空间(namespace)
    mac 使用 pf 做端口转发
    微信测试帐号如何设置URL和Token,以及相关验证的原理
    ionic开发笔记
    Eclipse下配置Maven
    css引用第三方字体库
  • 原文地址:https://www.cnblogs.com/djoker/p/9436074.html
Copyright © 2011-2022 走看看