后端开发|Python教程
Python,网络编程
后端开发-Python教程内容目录
html抽奖源码下载,vscode定位行号,rndis ubuntu,tomcat的wtp,sqlite 查询返回值,jquery无刷新上传插件,视频播放器前端框架,python爬虫和数据怎么爬,php win7 下载,seo厂家今日价格,手机网站模版下载,创建网页版机器人,jsp网店模板lzw
1. 客户端(client.py)
2. 服务端(server.py)
弹弹堂私服源码,32位ubuntu系统,用爬虫做租房,php职务,seo张岩lzw
A、客户端(client.py)
免费的微信抽奖系统源码下载,ubuntu设置桌面共享,tomcat8跑不起来,平度爬虫ip厂,php应用程序国际化,厦门seo实战lzw
import socketimport sysport = 70host = sys.argv[1]filename = sys.argv[2]s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)s.connect((host, port))fd = s.makefile("rw", 0)fd.write(filename + "\n")for line in fd.readlines(): sys.stdout.write(line)
程序通过socket.socket()建立一个Socket,参数告诉系统需要一个Internet Socket进行TCP通信。接着程序链接远程的主机名,并提供文件名。最后获得响应后在屏幕上打印出来。
测试
python client.py /
显示
iWelcome to gopher at ! fake (NULL) 0i fake (NULL) 0iThis server has a lot of information of historic interest, fake (NULL) 0ifunny, or just plain entertaining -- all presented in Gopher. fake (NULL) 0iThere are many mirrors here of rare or valuable files with the fake (NULL) 0iaim to preserve them in case their host disappears. PLEASE READ fake (NULL) 0i"About This Server" FOR IMPORTANT NOTES AND LEGAL INFORMATION. fake (NULL) 0i fake (NULL) 00About This Server /About This Server.txt 70 +1Archives /Archives 70 +1Books /Books 70 +1Communication /Communication 70 +iThis directory contains the entire text of the book fake (NULL) 0i"We the Media: Grassroots Journalism by the People, for the People" fake (NULL) 0iby Dan Gillmor in various formats. fake (NULL) 0i fake (NULL) 0iFeel free to download and enjoy. fake (NULL) 01Computers /Computers 70 +1Current Issues and Events (Updated Apr. 23, 2002) /Current 70 +1Development Projects /devel 70 +0Gophers 10th Anniversary /3.0.0.txt 701Government, Politics, Law, and Conflict /Government 70 +0How To Help /How To Help.txt 70 +1Humor and Fun /Humor and Fun 70 +1Index to /Archives/index 701Internet /Internet 70 +1Other Gopher Servers /Software/Gopher/servers 701People /People 70 +1Reference /Reference 70 +1Software and Downloads /Software 70 +1The Gopher Project /Software/Gopher 700Whats New /whatsnew.txt 70 +
B、服务端(server.py)
# coding: utf-8import sockethost = \port = 51421s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)s.bind((host, port))s.listen(1) #每次最多只有一个等候处理print "Server is running on port %d; press Ctrl-C to terminate." %portwhile 1: clientsock, clientaddr = s.accept() clientfile = clientsock.makefile( w, 0) clientfile.write("Welcome, " + str(clientaddr) + "\n") clientfile.write("Please enter a string: ") line = clientfile.readline().strip() clientfile.write("You entered %d characters. \n" %len(line)) clientfile.close() clientsock.close()
建立一个socket,设置成可复用的(reusable),绑定端口号51421(可选大于1024的任一值),调用listen函数,开始等待来自客户端的请求,同时设定最多只有一个等候处理的链接。
主循环对a.accept函数调用开始,程序连接一个客户端后立马停止,接收用户的输入。
运行一个例子
首先运行server.py
python server.py
另开一个终端,连接localhost的51421端口。
jihite@ubuntu:~/web$ telnet localhost 51421Trying 127.0.0.1...Connected to localhost.Escape character is ^].Welcome, (127.0.0.1, 59853)Please enter a string: mmYou entered 2 characters.Connection closed by foreign host.