#! /usr/bin/env pythonimport socket, sys, timehost = sys.argv[1]textport = sys.argv[2]filename = sys.argv[3]try:s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)except socket.error, e:print "strange error creating socket: %s" % esys.exit(1)#try passing it as a numeric port numbertry:port = int(textport)except ValueError:#that not work, probably a protocol name#look it up insteadtry:port = socket.getservbyname(textport, 'tcp')except socket.error, e:print "cannot find your port: %s" % esys.exit(1)try:s.connect((host, port))except socket.gaierror, e:print "address-related error connecting to server: %s" % esys.exit(1)except socket.error, e:print "connection error: %s" % esys.exit(1)print "sleeping..."time.sleep(10)print "continuing."try:s.sendall("GET %s HTTP/1.0\r\n\r\n" % filename)except socket.error, e:print "error sending data: %s" % esys.exit(1)#WARN: if sendall returned before the server received data, then s.recv()#will break:)try:s.shutdown(1)except socket.error, e:print "error sending data(detected by shutdown): %s" % esys.exit(1)while True:try:buf = s.recv(2048)except socket.error, e:print "error recieving data: %s" % ssys.exit(1)if not len(buf):breaksys.stdout.write(buf)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。