Python网络编程基础笔记-Gopher客户端


               
               
                '''
英文原义:The Internet Gopher Protocol
中文释义:(RFC-1436)网际Gopher协议
        注解:这是一种互联网没有发展起来之前的一种从远程服务器上
        获取数据的协议。Gopher协议目前已经很少使用,它几乎已经完
        全被HTTP协议取代了。
'''
import socket,sys
port = 70
host = "quux.org"
filename = "/"
"""
socket参数
address families:AF_INET/AF_UNIX/AF_INET6
socket type:    SOCK_STREAM/SOCK_DGRAM/SOCK_RAM/SOCK_RDM/SOCK_SEQPACKET
"""
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
"""
connect的参数依赖AF,不同的AF,其参数不尽相同
AF_UNIX:a string
AF_INET:(host,port)
AF_INET6:(host, port, flowinfo, scopeid)
"""
s.connect((host,port))
"""
将string中的字符串发送,知道全部发送完毕或socket出错
"""
s.sendall(filename + "\r\n")
while 1:
    buf = s.recv(2048)
    if not len(buf):
        break
    sys.stdout.write(buf)