Python中的XMLRPC(Calendar)

XMLRPC服务器端代码,定义了三个方法名,getMonth获取所给月份的日历,getYear获取一年的日历,getDict测试返回字典的效果。

xmlrpc_server.py:

#!/usr/bin/python
# coding: utf-8

import calendar, SimpleXMLRPCServer, time, string, os

#创建 Server 对象
class Calendar:
    def getMonth(self, year, month):
      if(type(year) is type("")):
          if(year.isdigit()):
              year=string.atoi(year)
          else:
              return "error,the argv must be number"
      if(type(month) is type("")):
          if(month.isdigit()):
               month=string.atoi(month)
          else:
              return "error,the argv must be number"
      return calendar.month(year,month)

    def getYear(self, year):
      if(type(year) is type("")):
          if(year.isdigit()):
              year=string.atoi(year)
          else:
              return "error,the argv must be number"
        return calendar.calendar(year)

    def getDict(self):
      dict={‘1‘:‘1‘,‘2‘:‘2‘,‘3‘:‘3‘}
      return dict

#创建实例
calendar_object = Calendar()
server = SimpleXMLRPCServer.SimpleXMLRPCServer(("localhost", 8888))
server.register_instance(calendar_object)

#输出信息,等待链接
print "Listening on port 8888"
server.serve_forever()

客户端:xmlrpc_client.py:

#!/usr/bin/python
#  coding: utf-8 

import xmlrpclib
server = xmlrpclib.ServerProxy("http://localhost:8888")
month = server.getMonth (2014,8)
print month

year = server.getYear(2888)
print year

dict = server.getDict()
print dict

for keys in dict.keys():
        print "key=%s,value=%s"%(keys,dict[keys])

执行:

chmod u+x xmlrpc_server.py
./xmlrpc_server.py
新的终端:chmod u+x xmlrpc_client.py
./xmlrpc_client.py

效果如图:

Python中的XMLRPC(Calendar)

时间: 2024-10-18 17:27:31

Python中的XMLRPC(Calendar)的相关文章

Python中使用XMLRPC(入门)

一.简介 RPC是Remote Procedure Call的缩写,翻译成中文为:远程方法调用. 它是一种在本地机器上调用远端机器上的一个过程(方法)的技术,这个过程也被大家称为“分布式计算”,是为了提高各个分立机器的“互操作性”而发明出来的技术. XML-RPC的全称是XML Remote Procedure Call,即XML远程方法调用. 它是一套允许运行在不同操作系统.不同环境的程序实现基于Internet过程调用的规范和一系列的实现.这种远程过程调用使用http作为传输协议,XML作为

Python中time模块详解

在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. 在开始之前,首先要说明这几点: 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平台可能有所不同. UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间.在中国为UTC+8.DST

Python中的时间模块和日期模块

Python 日期和时间 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 时间间隔是以秒为单位的浮点小数. 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示. Python 的 time 模块下有很多函数可以转换常见日期格式.如函数time.time()用于获取当前时间戳, 如下实例: #!/usr/bin/python # -*- coding: UTF-

python中时间的基本使用

格式化日期 我们可以使用 time 模块的 strftime 方法来格式化日期,: time.strftime(format[, t]) #!/usr/bin/python # -*- coding: UTF-8 -*- import time # 格式化成2016-03-20 11:45:39形式 print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 格式化成Sat Mar 28 22:24:24 2016形式 pr

python中的函数存入list中的实例

最近由于接触了python这个强大的东西,在写代码时考虑到代码的扩展性,就想到了将python的函数名存入list中.有点像习惯的c/c++中的函数指针的意思. 下面上代码: 1 # coding=utf-8 2 #!/usr/bin/python 3 #脚本的用法 python nn_daemon.py 4 import json, urllib, urllib2, subprocess, sys, os, logging, time, socket, time, calendar, date

Python中的time模块与datetime模块用法总结

http://www.jb51.net/article/87721.htm time模块time模块是包含各方面对时间操作的函数. 尽管这些常常有效但不是所有方法在任意平台中有效. time用struct_time表示时间 ? 1 2 3 4 5 6 7 8 import time # time.struct_time(tm_year=2015, tm_mon=4, tm_mday=24,           tm_hour=14, tm_min=17, tm_sec=26,          

python中time()时间的相关问题

Python中time模块详解(转) 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. 在开始之前,首先要说明这几点: 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平台可能有所不同. UTC(Coordinated Universal Ti

Python中time模块详解(转)

Python中time模块详解(转) 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. 在开始之前,首先要说明这几点: 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平台可能有所不同. UTC(Coordinated Universal Ti

浅谈python中处理时间的模块

我们知道,Python提供了三种时间函数,时间模块 time.基本时间日期模块 datetime 和日历模块 Calendar. 一.time模块 1.在time模块中,可以用三种表现形式来表示时间,分别是时间戳.格式化时间字符串和结构化时间: 1).时间戳,通过time.time()获得 >>> time.time() 1545027641.4434128 2).格式化时间字符串,通过类似于time.strftime("%Y-%m-%d %H:%M:%S")这样的表