python实现带错误处理功能的远程文件读取方法

yipeiwu_com7年前Python基础

本文实例讲述了python实现带错误处理功能的远程文件读取方法。分享给大家供大家参考。具体如下:

import socket, sys, time
host = sys.argv[1]
textport = "80"
filename = sys.argv[3]
try:
  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  port = int(textport)
  s.connect((host, port))
  fd = s.makefile('rw', 0)
  print "sleeping..."
  time.sleep(10)
  print "Continuing."
  fd.write("GET %s HTTP/1.0\r\n\r\n" % filename)
  fd.flush()    
  s.shutdown(1)  
except socket.gaierror, e:
  print "Address-related error connecting to server: %s" % e
  sys.exit(1)
except socket.error, e:
  print "Connection error: %s" % e
  sys.exit(1)
while 1:
  try:
    buf = fd.read(2048)
  except socket.error, e:
    print "Error receiving data: %s" % e
    sys.exit(1)
  if not len(buf):
    break
  sys.stdout.write(buf)

希望本文所述对大家的Python程序设计有所帮助。

相关文章

基于Python Shell获取hostname和fqdn释疑

一直以来被Linux的hostname和fqdn(Fully Qualified Domain Name)困惑了好久,今天专门抽时间把它们的使用细节弄清了。 一、设置hostname/...

Python jieba库用法及实例解析

Python jieba库用法及实例解析

1、jieba库基本介绍 (1)、jieba库概述 jieba是优秀的中文分词第三方库 - 中文文本需要通过分词获得单个的词语 - jieba是优秀的中文分词第三方库,需要额...

Python内置函数delattr的具体用法

delattr 函数用于删除属性。 delattr(x, 'foobar') 相等于 del x.foobar。 语法 setattr 语法:delattr(object, nam...

Python多图片合并PDF的方法

Python多图片合并PDF的方法

python多图片合并pdf 起因 一个做美工的朋友需要将多个图片jpg 、png 合并起来,PS操作太慢了所以用了python进行完成这个任务 代码 #!/usr/bin/env...

python 单线程和异步协程工作方式解析

在python3.4之后新增了asyncio模块,可以帮我们检测IO(只能是网络IO【HTTP连接就是网络IO操作】),实现应用程序级别的切换(异步IO)。注意:asyncio只能发tc...