python使用socket远程连接错误处理方法

yipeiwu_com6年前Python基础

本文实例讲述了python使用socket远程连接错误处理方法。分享给大家供大家参考。具体如下:

import socket, sys
host = 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" % e
  sys.exit(1)
try:
  port = int(textport)
except ValueError:
  print "Couldn't find your port: %s" % e
  sys.exit(1)
try:
  s.connect((host, port))
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)
try:
  s.sendall("GET %s HTTP/1.0\r\n\r\n" % filename)
except socket.error, e:
  print "Error sending data: %s" % e
  sys.exit(1)
while 1:
  try:
    buf = s.recv(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的函数的一些高阶特性

高阶函数英文叫Higher-order function。什么是高阶函数?我们以实际代码为例子,一步一步深入概念。 变量可以指向函数 以Python内置的求绝对值的函数abs()为例,调...

Django ORM 查询管理器源码解析

ORM 查询管理器 对于 ORM 定义: 对象关系映射, Object Relational Mapping, ORM, 是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数...

python单线程下实现多个socket并发过程详解

先看服务端的代码 import sys # import socket import time import gevent from gevent import socket fro...

快速解决pandas.read_csv()乱码的问题

pandas.read_csv()遇到读进来乱码问题 1.设置encoding='gbk'或者encoding='utf-8'。pandas.read_csv('data.csv',en...

在Python的Django框架中编写错误提示页面

你应该在生产环境中把TEMPLATE_DEBUGFalse 如果这个设为`` True`` ,为了在那个好看的错误页面上显示足够的东西,Django的模版系统就会为每一个模版保存一些额外...